從 SQL Server 2005 中處理 XML

來源:互聯網
上載者:User

  一、簡介

  Microsoft SQL Server 2005 中的重大更改之一是包含了 XML 資料類型。此資料類型是第一類類型,就像 INT 或 VARCHAR 一樣,而且 SQL Server 2005 允許使用一系列 XML 特定的函數對此資料類型進行就地查詢和處理。它還支援儲存資料庫中的 XML 結構描述的集合,從而啟用基於資料庫的結構描述驗證。另外,SQL Server 2005 大大地擴充了 XML 組合(SELECT ... FOR XML 語句)的功能,擴充了 OpenXML() XML 分解函數,並針對 XML 資料類型提供了一個新的 nodes() 函數以進行更輕量級的分解。

  既然對資料庫伺服器增強了此新的 XML 功能,那麼對 Microsoft ADO.NET 2.0 中的 SqlClient 資料提供者也進行增強就不會令人感到驚奇了。對 ADO.NET DataSet 也有更改,以便支援類型 XML 的 DataColumn,而且 System.Data 和 System.Xml 之間的“整合點”得到了拓寬。在本文中,我將探究在用戶端上使用 SQL Server 2005 XML 資料類型。

  SQL Server 2005 可以產生兩類 XML 輸出。語句 SELECT * FROM AUTHORS FOR XML AUTO 產生 XML 流,而不是一列一行的行集。該輸出類型與 SQL Server 2000 中的輸出類型相比沒有改變。只是因為查詢分析器工具中的限制,XML 流輸出在 SQL Server 查詢分析器中才顯示為一列一行的行集。您可以通過其特定的唯一識別碼名稱“XML_F52E2B61-18A1-11d1-B105-000805F49916B”來將這種流與“普通”列區分開來。此名稱實際上是底層 TDS(這是一種表格式的資料流,SQL Server 網路格式)分析器的指標,在這種分析器中,列應該流至用戶端,而不是像普通行集那樣發送。有一種特殊的方法 SqlCommand.ExecuteXmlReader 用來在用戶端上檢索此特殊的流。在 SQL Server 2005 中,SELECT ... FOR XML 語句通過許多方式得到了增強。這裡僅提少數幾種:



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.