Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Een XSD-schema (XML Schema Definition Language) kan complexe typen in elkaar genest hebben. In dit geval past het toewijzingsproces standaardtoewijzing toe en maakt het volgende in de DataSet:
Een tabel voor elke van de complexe typen (moeder en kind).
Als er geen unieke beperking bestaat op de bovenliggende tabel, wordt er één extra primaire sleutelkolom toegevoegd per tabeldefinitie met de naam TableName_Id waarbij TableName de naam van de bovenliggende tabel is.
Een primaire-sleutelbeperking in de bovenliggende tabel die de extra kolom identificeert als de primaire sleutel (door de eigenschap IsPrimaryKey in te stellen op True). De beperking heet Constraint# waarbij #1, 2, 3 enzovoort is. De standaardnaam voor de eerste beperking is bijvoorbeeld Constraint1.
Een foreign key-beperking in de kindtabel die de extra kolom als foreign key identificeert en verwijst naar de primaire sleutel van de oudertabel. De beperking heet ParentTable_ChildTable waarbij ParentTable de naam van de bovenliggende tabel is en ChildTable de naam van de onderliggende tabel is.
Een gegevensrelatie tussen de ouder- en kindtabellen.
In het volgende voorbeeld ziet u een schema waarin OrderDetail een onderliggend element van Order is.
<xs:schema id="MyDataSet" 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="Order">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderNumber" type="xs:string" />
<xs:element name="EmpNumber" type="xs:string" />
<xs:element name="OrderDetail">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderNo" type="xs:string" />
<xs:element name="ItemNo" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Het XML-schema-toewijzingsproces maakt het volgende in de DataSet:
Een Order tabel en een OrderDetail tabel.
Order(OrderNumber, EmpNumber, Order_Id) OrderDetail(OrderNo, ItemNo, Order_Id)
Een unieke beperking in de tabel Order . Houd er rekening mee dat de eigenschap IsPrimaryKey is ingesteld op True.
ConstraintName: Constraint1 Type: UniqueConstraint Table: Order Columns: Order_Id IsPrimaryKey: True
Een vreemde-sleutelbeperking op de tabel OrderDetail.
ConstraintName: Order_OrderDetail Type: ForeignKeyConstraint Table: OrderDetail Columns: Order_Id RelatedTable: Order RelatedColumns: Order_Id
Een relatie tussen de tabellen Order en OrderDetail . De eigenschap Nested voor deze relatie is ingesteld op True omdat de elementen Order en OrderDetail genest zijn in het schema.
ParentTable: Order ParentColumns: Order_Id ChildTable: OrderDetail ChildColumns: Order_Id ParentKeyConstraint: Constraint1 ChildKeyConstraint: Order_OrderDetail RelationName: Order_OrderDetail Nested: True