End 요소(SSDL)
SSDL(저장소 스키마 정의 언어)의 End 요소는 기본 데이터베이스에서 외래 키 제약 조건의 한 End에 있는 테이블과 행의 수를 지정합니다. End 요소는 Association 요소 또는 AssociationSet 요소의 자식일 수 있습니다. 각 경우에 가능한 자식 요소와 적용 가능한 특성은 서로 다릅니다.
Association 요소의 자식인 End 요소
End 요소(Association 요소의 자식)는 Type 및 Multiplicity 특성을 사용하여 외래 키 제약 조건의 End에 있는 테이블과 행의 수를 각각 지정합니다. 외래 키 제약 조건의 End는 SSDL 연결의 일부로 정의되며 SSDL 연결에는 정확히 두 개의 End가 있어야 합니다.
End 요소는 다음에 나열된 순서대로 자식 요소를 포함할 수 있습니다.
Documentation(0개 또는 한 개의 요소)
OnDelete(0개 또는 한 개의 요소)
Annotation 요소(0개 이상의 요소)
적용 가능한 특성
다음 표에서는 Association 요소의 자식인 경우 End 요소에 적용할 수 있는 특성에 대해 설명합니다.
특성 이름 | 필수 여부 | 값 |
---|---|---|
Type |
예 |
외래 키 제약 조건의 End에 있는 SSDL 엔터티 집합의 정규화된 이름입니다. |
Role |
아니요 |
해당하는 ReferentialConstraint 요소(사용되는 경우)의 Principal 또는 Dependent 요소에 있는 Role 특성의 값입니다. |
Multiplicity |
예 |
외래 키 제약 조건의 End에 있을 수 있는 행 수에 따라 1, 0..1 또는 *입니다.
|
참고: |
---|
주석 특성(사용자 지정 XML 특성)을 원하는 수만큼 End 요소에 적용할 수 있습니다.그러나 사용자 지정 특성은 CSDL에 예약된 XML 네임스페이스에 속할 수 없습니다.두 사용자 지정 특성의 정규화된 이름은 서로 같을 수 없습니다. |
예제
다음 예제에서는 FK_CustomerOrders 외래 키 제약 조건을 정의하는 Association 요소를 보여 줍니다. 각 End 요소에 지정된 Multiplicity 값은 Orders 테이블의 많은 행이 Customers 테이블의 행과 연결될 수 있지만 Customers 테이블의 한 행만 Orders 테이블의 행과 연결될 수 있음을 나타냅니다. 또한 OnDelete 요소는 Customers 테이블의 특정 행이 삭제되는 경우 Customers 테이블의 해당 행을 참조하는 Orders 테이블의 모든 행이 삭제됨을 나타냅니다.
<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>
AssociationSet 요소의 자식인 End 요소
End 요소(AssociationSet 요소의 자식)는 기본 데이터베이스에서 외래 키 제약 조건의 한 End에 있는 테이블을 지정합니다.
End 요소는 다음에 나열된 순서대로 자식 요소를 포함할 수 있습니다.
Documentation(0개 또는 한 개)
Annotation 요소(0개 이상)
적용 가능한 특성
다음 표에서는 AssociationSet 요소의 자식인 경우 End 요소에 적용할 수 있는 특성에 대해 설명합니다.
특성 이름 | 필수 여부 | 값 |
---|---|---|
EntitySet |
예 |
외래 키 제약 조건의 End에 있는 SSDL 엔터티 집합의 이름입니다. |
Role |
아니요 |
해당하는 Association 요소의 한 End 요소에 지정된 Role 특성 중 하나의 값입니다. |
참고: |
---|
주석 특성(사용자 지정 XML 특성)을 원하는 수만큼 End 요소에 적용할 수 있습니다.그러나 사용자 지정 특성은 CSDL에 예약된 XML 네임스페이스에 속할 수 없습니다.두 사용자 지정 특성의 정규화된 이름은 서로 같을 수 없습니다. |
예제
다음 예제에서는 두 개의 End 요소가 포함된 AssociationSet 요소가 있는 EntityContainer 요소를 보여 줍니다.
<EntityContainer Name="ExampleModelStoreContainer">
<EntitySet Name="Customers"
EntityType="ExampleModel.Store.Customers"
Schema="dbo" />
<EntitySet Name="Orders"
EntityType="ExampleModel.Store.Orders"
Schema="dbo" />
<AssociationSet Name="FK_CustomerOrders"
Association="ExampleModel.Store.FK_CustomerOrders">
<End Role="Customers" EntitySet="Customers" />
<End Role="Orders" EntitySet="Orders" />
</AssociationSet>
</EntityContainer>