Strukturierte Typen, die NULL-Werte zulassen (Entity SQL)

Eine NULL-Instanz eines strukturierten Typs ist eine Instanz, die nicht vorhanden ist. Dies unterscheidet sich von einer vorhandenen Instanz, in der alle Eigenschaften den Wert NULL haben.

In diesem Thema werden strukturierte Typen beschrieben, die NULL-Werte zulassen. Zu dieser Beschreibung gehören eine Aufzählung der Typen, die NULL-Werte zulassen, und die Angabe von Codemustern, die NULL-Instanzen von strukturierten Typen erstellen, die NULL-Werte zulassen.

Arten strukturierter Typen, die NULL-Werte zulassen

Es gibt drei Arten von Strukturtypen, die NULL-Werte zulassen:

  • Zeilentypen

  • Komplexe Typen

  • Entitätstypen

Codemuster, die NULL-Instanzen strukturierter Typen erstellen

In den folgenden Szenarios werden NULL-Instanzen erstellt:

  • NULL als strukturierten Typ formen:

    TREAT (NULL AS StructuredType)
    
  • Umwandeln eines Basistyps in einen abgeleiteten Typ:

    TREAT (BaseType AS DerivedType)
    
  • "Outer join on false"-Bedingung:

    Collection1 LEFT OUTER JOIN Collection2
    ON FalseCondition
    

    --oder

    Collection1 RIGHT OUTER JOIN Collection2
    ON FalseCondition
    

    --oder

    Collection1 FULL OUTER JOIN Collection2
    ON FalseCondition
    
  • Dereferenzierung eines NULL-Verweises:

    DEREF(NullRef)
    
  • Abrufen von ANYELEMENT aus einer leeren Auflistung:

    ANYELEMENT(EmptyCollection)
    
  • Überprüfen von Instanzen strukturierter Typen auf NULL:

    ...  for (int i = 0; i < reader.FieldCount; i++)
    {
        if (reader.IsDBNull(i))
        {
            Console.WriteLine(“[NULL]”);
        }
        else
        {
            Console.WriteLine(reader.GetValue(i).ToString());
        }
    }  
    

Siehe auch

Konzepte

Übersicht über Entity SQL