이 섹션에서는 XSD(XML 스키마 정의 언어) 스키마 DataSet
문서에서 관계형 스키마를 빌드하는 방법에 대한 개요를 제공합니다. 일반적으로 스키마 요소의 각 complexType
자식 요소에 대해 테이블이 생성됩니다 DataSet
. 테이블 구조는 복합 형식의 정의에 따라 결정됩니다. 테이블은 스키마의 DataSet
최상위 요소에 대해 만들어집니다. 그러나 테이블은 요소가 다른 complexType
요소 내에 중첩된 경우에만 complexType
최상위 complexType
요소에 대해 만들어지며, 이 경우 중첩된 complexType
요소는 내부 DataTable
요소에 DataSet
매핑됩니다.
XSD에 대한 자세한 내용은 W3C(World Wide Web 컨소시엄) XML 스키마 파트 0: 입문서 권장 사항, XML 스키마 1부: 구조 권장 사항 및 XML 스키마 파트 2: 데이터 형식 권장 사항을 참조하세요.
다음 예제에서는 요소의 customers
자식 요소인 MyDataSet
요소인 XML 스키마 를 보여 줍니다.
<xs:schema id="SomeID"
xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="MyDataSet" msdata:IsDataSet="true">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element name="customers" >
<xs:complexType >
<xs:sequence>
<xs:element name="CustomerID" type="xs:integer"
minOccurs="0" />
<xs:element name="CompanyName" type="xs:string"
minOccurs="0" />
<xs:element name="Phone" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
앞의 예제에서 요소는 customers
복합 형식 요소입니다. 따라서 복합 형식 정의가 구문 분석되고 매핑 프로세스에서 다음 테이블을 만듭니다.
Customers (CustomerID, CompanyName, Phone)
테이블에 있는 각 열의 데이터 형식은 지정된 해당 요소 또는 특성의 XML 스키마 형식에서 파생됩니다.
비고
요소가 customers
정수와 같은 간단한 XML 스키마 데이터 형식인 경우 테이블이 생성되지 않습니다. 테이블은 복합 형식인 최상위 요소에 대해서만 만들어집니다.
다음 XML 스키마에서 스키마 요소에는 두 개의 요소 자식 InStateCustomers
및 OutOfStateCustomers
.
<xs:schema id="SomeID"
xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="InStateCustomers" type="customerType" />
<xs:element name="OutOfStateCustomers" type="customerType" />
<xs:complexType name="customerType" >
</xs:complexType>
<xs:element name="MyDataSet" msdata:IsDataSet="true">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="customers" />
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
InStateCustomers
자식 요소와 OutOfStateCustomers
자식 요소는 모두 복합 형식 요소(customerType
)입니다. 따라서 매핑 프로세스는 다음 두 개의 동일한 테이블을 DataSet
생성합니다.
InStateCustomers (CustomerID, CompanyName, Phone)
OutOfStateCustomers (CustomerID, CompanyName, Phone)
이 섹션 안에
XSD(XML 스키마) 제약 조건을 데이터 세트 제약 조건에 매핑
DataSet
에서 고유 키 및 외래 키 제약 조건을 만드는 데 사용되는 XML 스키마 요소를 설명합니다.
XSD(XML 스키마)에서 데이터 세트 관계 생성
테이블 열 간의 관계를 만들기 위해 사용되는 XML 스키마 요소를 DataSet
에 대해 설명합니다.
XML 스키마 제약 조건 및 관계
XML 스키마 요소를 사용하여 DataSet
에서 제약 조건을 만들 때 관계가 암시적으로 생성되는 방법을 설명합니다.
관련 섹션
DataSet에서 XML 사용
관계형 구조 및 데이터를 XML 데이터 DataSet
로 로드하고 유지하는 방법을 설명합니다.