Aracılığıyla paylaş


Uygulamalar, XML veri türündeki çalışma

Bu konuda, birlikte çalışmak için kullanabileceğiniz seçenekler açıklanmıştır xml uygulamanızdaki veri türü. Konu aşağıdakiler hakkında bilgi içerir:

  • XML'DEN işleme bir xml ADO kullanarak türü sütun ve SQL Server Yerel istemci

  • XML'DEN işleme bir xml ADO.NET kullanarak, tür sütun

  • Işleme xml ADO.NET kullanarak parametreleri yazın.

Bir xml türü sütun kullanarak ADO ve SQL Server yerel istemci tarafından alınan XML işleme

Türleri ve özellikler'de sunulan MDAC Bileşenleri'ni kullanmak için SQL Server 2005, yapmanız gerekenler küme DataTypeCompatibility başlatma özellik ADO bağlantı dizesi.

Örneğin, aşağıdaki örnek Visual Basic komut dosyası kullanan Edition (VBScript), sorgulama sonuçlarını gösterir bir xml veri türü sütun, Demographics, içinde Sales.Store tablonun AdventureWorks Örnek Veritabanı'nı tıklatın. Özellikle, sorgu, bu örnek değeri arar sütun satırının yeri CustomerID eşittir 3.

Const DS = "MyServer"
Const DB = "AdventureWorks"

Set objConn = CreateObject("ADODB.Connection")
Set objRs = CreateObject("ADODB.Recordset")

CommandText = "SELECT Demographics" & _
              " FROM Sales.Store" & _
              " WHERE CustomerID = 3" & _
              " OR CustomerID = 4"
                   
ConnectionString = "Provider=SQLNCLI10" & _
                   ";Data Source=" & DS & _
                   ";Initial Catalog=" & DB & _
                   ";Integrated Security=SSPI;" & _
                   "DataTypeCompatibility=80"

'Connect to the data source.
objConn.Open ConnectionString

'Execute command through the connection and display
Set objRs = objConn.Execute(CommandText)

Dim rowcount
rowcount = 0
Do While Not objRs.EOF
   rowcount = rowcount + 1
   MsgBox "Row " & rowcount & _
           vbCrLf & vbCrLf & objRs(0)
   objRs.MoveNext
Loop

'Clean up.
objRs.Close
objConn.Close
Set objRs = Nothing
Set objConn = Nothing

Bu örnekte gösterildiği nasıl küme uyumluluk özelliği veri türü.Kullanmakta olduğunuz varsayılan olarak, bu 0 olarak küme SQL Server Yerel istemci. Değeri 80, sonra SQL Server Yerel istemci sağlayıcı yapar xml olarak kullanıcı tanımlı tür sütun görünür. SQL Server 2000 veri türleri. Bu DBTYPE_WSTR ve DBTYPE_BYTES, sırasıyla olacaktır.

SQL ServerYerel bir istemci istemci bilgisayara da yüklenmelidir ve bağlantı dizesi bu veri sağlayıcısıyla olarak belirtmeniz gerekir"Provider=SQLNCLI10;...".

Bu örneği sınamak için

  1. Belirtilen dönüşüm yollarının geçerli SQL Server Yerel istemci yüklü ve bu MDAC 2.6.0or daha sonra istemci bilgisayarda kullanılabilir.

    Daha fazla bilgi için bkz:SQL Server 2008 yerel istemci programlama.

  2. Belirtilen dönüşüm yollarının geçerli AdventureWorks Örnek veritabanı SQL Server yükler.

    Bu örnek gerektirir AdventureWorks Örnek Veritabanı'nı tıklatın. Daha fazla bilgi için bkz:SQL Server Örnekleri ve Örnek Veritabanlarının Yüklenmesiyle İlgili Önemli Noktalar.

  3. Bu konuda daha önce olarak gösterilen kodu kopyalayın ve metin veya kod düzenleyicisine kodu yapıştırın.Dosyayı HandlingXmlDataType.vbs kaydedin.

  4. Komut dosyası için gerektiği gibi değiştirin, SQL Server Yükleme ve değişiklikleri kaydedin.

    Örneğin, burada MyServer Belirtilen, siz bunu ile ya da değiştirmeniz gerekir (local) veya, sunucu asıl adı SQL Server yükler.

  5. HandlingXmlDataType.vbs çalıştırın ve komut dosyası yürütmek.

Aşağıdaki örnek çıktı için sonuçlar benzemelidir:

Row 1

<StoreSurvey xmlns="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/StoreSurvey">
  <AnnualSales>1500000</AnnualSales>
  <AnnualRevenue>150000</AnnualRevenue>
  <BankName>Primary International</BankName>
  <BusinessType>OS</BusinessType>
  <YearOpened>1974</YearOpened>
  <Specialty>Road</Specialty>
  <SquareFeet>38000</SquareFeet>
  <Brands>3</Brands>
  <Internet>DSL</Internet>
  <NumberEmployees>40</NumberEmployees>
</StoreSurvey>

Row 2

<StoreSurvey xmlns="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/StoreSurvey">
  <AnnualSales>300000</AnnualSales>
  <AnnualRevenue>30000</AnnualRevenue>
  <BankName>United Security</BankName>
  <BusinessType>BM</BusinessType>
  <YearOpened>1976</YearOpened>
  <Specialty>Road</Specialty>
  <SquareFeet>6000</SquareFeet>
  <Brands>2</Brands>
  <Internet>DSL</Internet>
  <NumberEmployees>5</NumberEmployees>
</StoreSurvey>

Gelen bir xml türü sütun olarak ADO.NET kullanarak XML işleme

To handle XML from an xml data type column by using ADO.NET and the Microsoft .NET Framework you can use the standard behavior of the SqlCommand class.Örneğin, bir xml veri türü, sütun ve değerleri aynı şekilde herhangi bir SQL sütun kullanılarak alınır alınabilir bir SqlDataReader.However içeriğiyle çalışmak isterseniz, bir xml veri türü sütununu XML, önce içeriği atamanız gerekir bir XmlReader TYPE.

For more information and example code, see "XML Column Values in a Data Reader" in the Microsoft .NET Framework 2.0 SDK documentation.

Bir xml türü sütun içindeki parametreler kullanılarak ADO.NET ile işleme

ADO.NET de parametre olarak iletilen bir xml veri türü işlemek için .NET Framework, değeri bir kopyası olarak sağlamanız SqlXml Veri Türü. Hiçbir özel işlem, çünkü katıldı xml sütun veri türü SQL Server parametre değerleri aynı şekilde başka bir sütun ve veri türleri gibi kabul edebilir string veya integer.

For more information and example code, see "XML Values as Command Parameters" in the Microsoft .NET Framework 2.0 SDK documentation.

See Also

Concepts