Typsystem (Entity SQL)
Entity SQL unterstützt verschiedene Typen:
Primitive (einfache) Typen wie Int32 und String.
Nominale Typen, die im Schema definiert sind, z. B. EntityType, ComplexType und RelationshipType.
Anonyme Typen, die nicht explizit im Schema definiert sind: CollectionType, RowType und RefType.
In diesem Abschnitt werden die anonymen Typen behandelt, die nicht explizit im Schema definiert, jedoch von Entity SQL unterstützt werden. Informationen zu primitiven und nominalen Typen finden Sie unter Entity Data Model-Typen.
Zeilen
Die Struktur einer Zeile ist abhängig von der Reihenfolge der typisierten und benannten Member, aus denen die Zeile besteht. Ein Zeilentyp hat keine Identität und kann nicht vererben. Instanzen des gleichen Zeilentyps sind äquivalent, wenn die Member entsprechend äquivalent sind. Zeilen weisen kein Verhalten über ihre strukturelle Äquivalenz hinaus auf und haben kein Äquivalent in der CLR. Abfragen können zu Strukturen führen, die Zeilen oder Auflistungen von Zeilen enthalten. Die API-Bindung zwischen den Entity SQL-Abfragen und der Hostsprache definiert die Realisierung von Zeilen in der Abfrage, die das Ergebnis hervorgerufen hat. Informationen zum Erstellen einer Zeileninstanz finden Sie unter Typenkonstruktor-Operatoren (Entity SQL).
Auflistungen
Auflistungstypen stellen 0 (null) oder mehr Instanzen anderer Objekte dar. Informationen zum Erstellen von Auflistungen finden Sie unter Typenkonstruktor-Operatoren (Entity SQL).
Verweise
Ein Verweis ist ein logischer Zeiger auf eine bestimmte Entität in einer bestimmten Entitätenmenge.
Entity SQL unterstützt folgende Operatoren zum Erstellen, Löschen und Navigieren von Verweisen:
Sie können mit dem Memberzugriffsoperator (Punkt – .
) durch einen Verweis navigieren. Der folgende Ausschnitt extrahiert die ID-Eigenschaft (von Reihenfolge) durch Navigation durch die r (Verweis)-Eigenschaft.
select o2.r.Id
from (select ref(o) as r from LOB.Orders as o) as o2
Wenn der Verweiswert NULL ist oder das Ziel des Verweises nicht vorhanden ist, hat das Ergebnis den Wert NULL.
Siehe auch
Verweis
Konzepte
Übersicht über Entity SQL
Entity SQL-Referenz