다음을 통해 공유


XSD(XML 스키마)에서 데이터 세트 관계형 구조 파생

이 섹션에서는 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 스키마에서 스키마 요소에는 두 개의 요소 자식 InStateCustomersOutOfStateCustomers.

<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 로 로드하고 유지하는 방법을 설명합니다.

참고하십시오