EntityMetadata のソリューション エクスプローラーまたは 3 つのリレーションシップ コレクションを見ると、3 種類のリレーションシップがあると思われる場合があります。 実際には、次の表に示すように、2 つの型しかありません。
| リレーションシップの種類 | Description |
|---|---|
| 一対多 OneToManyRelationshipMetadata |
関連テーブルのルックアップ列により、 プライマリ テーブル の 1 つのレコードを他の多くの 関連テーブル レコードに関連付けることができるリレーションシップ。 プライマリ テーブル レコードを表示すると、関連付けられている関連テーブル レコードの一覧が表示されます。 |
| 多対多 ManyToManyRelationshipMetadata |
特定のテーブルの多くのレコードを別のテーブルの多くのレコードに関連付けることができるように、特殊な リレーションシップ テーブル ( Intersect テーブルと呼ばれることもあります) に依存するリレーションシップ。 多対多リレーションシップでいずれかのテーブルのレコードを表示すると、そのテーブルに関連する他のテーブルのレコードの一覧が表示されます。 |
EntityMetadata.ManyToOneRelationships コレクションには、OneToManyRelationshipMetadata 型が含まれています。 テーブル間に一対多リレーションシップが存在し、各テーブルを プライマリ テーブル または 関連テーブルとして参照します。 関連するテーブル ( 子テーブルとも呼ばれます) には、プライマリ テーブル ( 親テーブルとも呼ばれる) からのレコードへの参照を格納できる参照列があります。 多対一リレーションシップは、関連テーブルから表示される単なる一対多リレーションシップです。
注
関連テーブルは 子テーブルと呼ばれることもありますが、これらのテーブルを 子テーブルと混同しないでください。これは、関連テーブルにセキュリティがどのように適用されるかを指します。
詳細: テーブル間のリレーションシップを作成する。
カスケード構成
一対多リレーションシップが存在する場合は、データの整合性を維持し、ビジネス プロセスを自動化するようにカスケード動作を構成します。 詳細: リレーションシップのカスケード動作を構成します。
テーブルの階層を作成する
自己参照型の一対多リレーションシップ内で、 IsHierarchical プロパティを に設定して階層を設定します。
モデル駆動型アプリを使用すると、階層を表示および操作できます。
開発者にとって、このプロパティは、 演算子と 演算子を使用して、階層に基づく新しい種類のクエリを有効にします。
詳細については、「 階層的に関連するデータのクエリと視覚化」を参照してください。
こちらも参照ください
Dataverse テーブル