型システム (Entity SQL)
Entity SQL では、次に示すように多数の型をサポートしています。
Int32 や String などのプリミティブ型 (単純型)。
EntityType、ComplexType、RelationshipType など、スキーマで定義される標準型。
CollectionType、RowType、RefType など、明示的にはスキーマで定義されない匿名型。
ここでは、明示的にはスキーマで定義されていなくても Entity SQL でサポートされている匿名型について説明します。 プリミティブ型および標準型については、「概念モデルの型」を参照してください。
行
行の構造は、行を構成する型指定された名前付きのメンバーの配列に依存します。 行型には ID がなく、派生元にすることはできません。 同じ行型のインスタンスは、メンバーがそれぞれ同等である場合は同等になります。 行には構造同値以外の動作はなく、共通言語ランタイムに同等のものはありません。 クエリの結果は、行または行のコレクションを含む構造になります。 Entity SQL クエリとホスト言語の間の API バインドは、結果を生成したクエリでどのように行が構成されるかを定義します。 行インスタンスの作成方法については、「コンストラクター (Entity SQL)」を参照してください。
コレクション
コレクション型は、他のオブジェクトの 0 個以上のインスタンスを表します。 コレクションの作成方法については、「コンストラクター (Entity SQL)」を参照してください。
参照
参照とは、特定のエンティティ セットにある特定のエンティティへの論理ポインターです。
Entity SQL では、参照の構築、分解、およびナビゲートを行うための次の演算子がサポートされています。
メンバー アクセス (ドット) 演算子 (.
) を使用して参照によるナビゲーションを行うことができます。 次のコード例では、r (参照) プロパティによるナビゲーションで Order の Id プロパティを取得します。
select o2.r.Id
from (select ref(o) as r from LOB.Orders as o) as o2
参照値が null であるか、参照先が存在しない場合、結果は null になります。
参照
リファレンス
概念
Entity SQL の概要
Entity SQL リファレンス