Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SQL veritabanı projeleri, XSD (XML Şema Tanımı) dosyalarından XML şema koleksiyonu nesnelerinin otomatik olarak oluşturulmasını destekler. Projenize uygun meta verileri içeren bir XSD dosyası eklediğinizde, derleme işlemi veritabanınızda XML veri doğrulamasını zorunlu kılmak için kullanabileceğiniz bir CREATE XML SCHEMA COLLECTION deyim oluşturur.
XML şema koleksiyonları, SQL Server yazılan XML sütunları sağlayarak veritabanı altyapısının XML verilerini tanımlı şemalara göre doğrulamasını ve sorgu performansını iyileştirmesini sağlar.
Projede XSD dosyalarını yapılandırma
XSD dosyasından XML şema koleksiyonu oluşturmak için proje dosyanıza (Build) iki gerekli meta veri öğesi içeren bir .sqlproj öğe ekleyin:
-
RelationalSchema: XML şema koleksiyonunun oluşturulduğu veritabanı şeması (örneğin,
dbo) - XMLSchemaCollectionName: Veritabanında elde edilen XML şema koleksiyonu nesnesinin adı
Aşağıdaki örnekte, BIR SQL projesinde XSD dosyasının nasıl yapılandırıldığı gösterilmektedir:
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build">
<Sdk Name="Microsoft.Build.Sql" Version="2.1.0" />
<PropertyGroup>
<Name>MyDatabase</Name>
<DSP>Microsoft.Data.Tools.Schema.Sql.Sql170DatabaseSchemaProvider</DSP>
<ModelCollation>1033, CI</ModelCollation>
</PropertyGroup>
<ItemGroup>
<Build Include="OrderSchema.xsd">
<RelationalSchema>dbo</RelationalSchema>
<XMLSchemaCollectionName>OrderSchemaCollection</XMLSchemaCollectionName>
</Build>
</ItemGroup>
</Project>
XSD dosya örneği
XSD dosyası, XML verilerinin izlemesi gereken yapıyı tanımlar. Aşağıdaki örnek, bir veya daha fazla Order öğe içeren bir Item öğenin şemasını tanımlar:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Order">
<xs:complexType>
<xs:sequence>
<xs:element name="Item" type="xs:string" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Proje oluşturulduğunda, bu XSD dosyası OrderSchemaCollection nesnesini dbo şemasında oluşturan bir CREATE XML SCHEMA COLLECTION deyimi üretir.
Yazılan XML sütunlarını kullanma
XML şema koleksiyonu tanımlandıktan sonra, yazılan XML sütunları oluşturmak için tablo tanımlarında buna başvurun. Yazılan XML sütunları verileri şemaya göre doğrular ve sorgu performansını geliştirir.
Aşağıdaki örnek, oluşturulan şema koleksiyonunu kullanan, türü yazılan XML sütununa sahip bir tablo oluşturur:
CREATE TABLE dbo.Orders (
Id INT PRIMARY KEY,
OrderData XML(dbo.OrderSchemaCollection)
);
OrderData sütununa veri eklediğinizde SQL Server XML'yi OrderSchemaCollection şemasına göre doğrular. Şemaya uymayan geçersiz XML reddedilir.