Bagikan melalui


batasan integritas referensial

Batasan integritas referensial dalam Model Data Entitas (EDM) mirip dengan batasan integritas referensial dalam database hubungan. Dengan cara yang sama seperti kolom (atau kolom-kolom) dari tabel database dapat mereferensikan kunci primer tabel lain, properti (atau properti-properti) dari jenis entitas dapat mereferensikan kunci entitas dari jenis entitas lain. Jenis entitas yang direferensikan disebut akhir prinsipal batasan. Jenis entitas yang mereferensikan akhir prinsipal disebut akhir dependen dari batasan.

Batasan integritas referensial didefinisikan sebagai bagian dari asosiasi antara dua jenis entitas. Definisi untuk batasan integritas referensial menentukan informasi berikut:

  • Akhir prinsipal batasan. (Jenis entitas yang kunci entitasnya dirujuk oleh akhir dependen.)

  • Kunci entitas dari akhir prinsipal.

  • Akhir dependen dari batasan. (Jenis entitas yang memiliki properti atau properti-properti yang mereferensikan kunci entitas dari akhir prinsipal.)

  • Properti atau properti-properti referensi dari akhir dependen.

Tujuan dari batasan integritas referensial dalam EDM adalah untuk memastikan bahwa asosiasi yang valid selalu ada. Untuk informasi selengkapnya, lihat properti kunci asing.

Contoh

Diagram di bawah menunjukkan model konseptual dengan dua asosiasi: WrittenBy dan PublishedBy. Jenis entitas Book memiliki properti, PublisherId, yang mereferensikan kunci entitas dari jenis entitas Publisher saat Anda menentukan batasan integritas referensial pada asosiasi PublishedBy.

RefConstraintModel

ADO.NET Entity Framework menggunakan bahasa khusus domain (DSL) yang disebut bahasa definisi skema konseptual (CSDL) untuk mendefinisikan model konseptual. CSDL berikut mendefinisikan batasan integritas referensial pada asosiasi PublishedBy yang ditunjukkan dalam model konseptual di atas.

<Association Name="PublishedBy">
  <End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
  </End>
  <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
  <ReferentialConstraint>
    <Principal Role="Publisher">
      <PropertyRef Name="Id" />
    </Principal>
    <Dependent Role="Book">
      <PropertyRef Name="PublisherId" />
    </Dependent>
  </ReferentialConstraint>
</Association>

Lihat juga