다음을 통해 공유


OnDelete 요소(SSDL)

SSDL(저장소 스키마 정의 언어)의 OnDelete 요소는 외래 키 제약 조건에 관여하는 행이 삭제될 때의 데이터베이스 동작을 나타냅니다. 작업이 Cascade로 설정되어 있으면 삭제되는 행을 참조하는 행도 삭제됩니다. 작업이 None으로 설정되어 있으면 삭제되는 행을 참조하는 행이 함께 삭제되지 않습니다. OnDelete 요소는 End 요소의 자식 요소입니다.

OnDelete 요소는 다음에 나열된 순서대로 자식 요소를 포함할 수 있습니다.

적용 가능한 특성

다음 표에서는 OnDelete 요소에 적용할 수 있는 특성에 대해 설명합니다.

특성 이름 필수 여부

Action

Cascade 또는 None. Restricted 값도 사용할 수 있지만 이 값의 동작은 None과 동일합니다.

Cc716745.note(ko-kr,VS.100).gif참고:
주석 특성(사용자 지정 XML 특성)을 원하는 수만큼 OnDelete 요소에 적용할 수 있습니다.그러나 사용자 지정 특성은 SSDL에 예약된 XML 네임스페이스에 속할 수 없습니다.두 사용자 지정 특성의 정규화된 이름은 서로 같을 수 없습니다.

예제

다음 예제에서는 FK_CustomerOrders 외래 키 제약 조건을 정의하는 Association 요소를 보여 줍니다. OnDelete 요소는 Customers 테이블의 특정 행이 삭제될 경우 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