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.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Bu örnek şunları gösterir:
Microsoft .NET Framework ortamında Microsoft SQL Server'a erişmek için Microsoft SQLXML Managed Classes (Microsoft.Data.SqlXml) nasıl kullanılır.
.NET Framework ortamında üretilen DiffGramların SQL Server tablolarına veri güncellemelerini nasıl uygulayabileceği.
Bu uygulamada, bir XPath sorgusu bir XSD şemasına karşı çalıştırılır. XPath sorgusunun yürütülmesi, iletişim verilerinden (FirstName, LastName) oluşan bir XML belgesi döndürür. Uygulama, .NET Framework ortamındaki veri setine XML belgesini yükler. Veri setindeki veriler değiştirilir: veri setindeki ilk kişi için konağın adı "Susan" olarak değiştirilir. DiffGram, veri setinden oluşturulur ve DiffGram'da belirtilen güncelleme (çalışanın adındaki değişiklik) Person.Contact tablosuna uygulanır.
Uyarı
Kodda, bağlantı dizesinde SQL Server örneğinin adını belirtmeniz gerekir.
using System;
using System.Data;
using Microsoft.Data.SqlXml;
using System.IO;
class Test
{
static string ConnString = "Provider=SQLOLEDB;Server=SqlServerName;database=AdventureWorks;Integrated Security=SSPI;";
public static int testParams()
{
DataRow row;
SqlXmlAdapter ad;
//need a memory stream to hold diff gram temporarily
MemoryStream ms = new MemoryStream();
SqlXmlCommand cmd = new SqlXmlCommand(ConnString);
cmd.RootTag = "ROOT";
cmd.CommandText = "Con";
cmd.CommandType = SqlXmlCommandType.XPath;
cmd.SchemaPath = "MySchema.xml";
//load data set
DataSet ds = new DataSet();
ad = new SqlXmlAdapter(cmd);
ad.Fill(ds);
row = ds.Tables["Con"].Rows[0];
row["FName"] = "Susan";
ad.Update(ds);
return 0;
}
public static int Main(String[] args)
{
testParams();
return 0;
}
}
Örneği test etmek için:
Bu örneği test etmek için Microsoft .NET Framework'ün bilgisayarınızda yüklü olması gerekir.
Bu XSD şemasını (MySchema.xml) bir klasöre kaydedin:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sql="urn:schemas-microsoft-com:mapping-schema"> <xsd:element name="Con" sql:relation="Person.Contact" > <xsd:complexType> <xsd:sequence> <xsd:element name="FName" sql:field="FirstName" type="xsd:string" /> <xsd:element name="LName" sql:field="LastName" type="xsd:string" /> </xsd:sequence> <xsd:attribute name="ContactID" type="xsd:integer" /> </xsd:complexType> </xsd:element> </xsd:schema>Bu örnekte verilen C# kodunu (DocSample.cs) şemanın saklandığı klasöre kaydedin. (Dosyaları farklı bir klasörde saklarsanız, kodu düzenlemeniz ve eşleme şeması için uygun dizin yolunu belirtmeniz gerekir.)
Kodu derleyin. Kodu komut isteğinde derlemek için şunları kullanın:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.csBu, bir yürütülebilir (DocSample.exe) oluşturur.
Komut dizisinde, DocSample.exeçalıştırın.