共用方式為


OnDelete 項目 (SSDL)

當參與外部索引鍵條件約束之資料列被刪除時,存放結構定義語言 (SSDL) 中的 OnDelete 項目會反映資料庫行為。 如果動作已設定為 Cascade,則要刪除之參照資料列之資料列也會被刪除。 如果動作已設定為 None,則要刪除之參照資料列之資料列也不會被刪除。 OnDelete 項目是 End 項目的子項目。

OnDelete 項目可以擁有下列子項目 (依列出的順序):

適用屬性

下表描述可套用至 OnDelete 項目的屬性。

屬性名稱 必要

Action

CascadeNone (值 Restricted 有效,但是與 None 具有相同的行為)。

Cc716745.note(zh-tw,VS.100).gif注意:
可以將任何數量的附註屬性 (自訂 XML 屬性) 套用至 OnDelete 項目。不過,自訂屬性不可屬於任何 XML 命名空間,這是保留供 SSDL 使用。任兩個自訂屬性的完整名稱不能相同。

範例

下列範例顯示 Association 項目定義 FK_CustomerOrders 外部索引鍵條件約束。 如果 Customers 資料表中的資料列已刪除,OnDelete 項目表示將要刪除 Orders 資料表中參考 Customers 資料表中之特定資料列的所有資料列。

<Association Name="FK_CustomerOrders">
  <End Role="Customers" 
       Type="ExampleModel.Store.Customers" Multiplicity="1">
    <OnDelete Action="Cascade" />
  </End>
  <End Role="Orders" 
       Type="ExampleModel.Store.Orders" Multiplicity="*" />
  <ReferentialConstraint>
    <Principal Role="Customers">
      <PropertyRef Name="CustomerId" />
    </Principal>
    <Dependent Role="Orders">
      <PropertyRef Name="CustomerId" />
    </Dependent>
  </ReferentialConstraint>
</Association>

另請參閱

概念

Entity Framework 概觀
SSDL 規格

其他資源

CSDL、SSDL 和 MSL 規格
ADO.NET Entity Data Model Tools