各種都可以參照: 鏈接:https://wenku.baidu.com/view/778f794bfe4733687e21aa90.html 怎樣把SQL Server里的某個表的數據導出成XML文件,要用SQL語言,而且要自動實現,怎麼做?最佳答案 select * from 表名 for xml ...
各種都可以參照:
鏈接:https://wenku.baidu.com/view/778f794bfe4733687e21aa90.html
怎樣把SQL Server里的某個表的數據導出成XML文件,要用SQL語言,而且要自動實現,怎麼做?
最佳答案 select * from 表名 for xml
以下是詳細介紹:
FOR 子句
FOR 子句用於指定 BROWSE 或 XML 選項(BROWSE 和 XML 是不相關的選項)。
語法
[ FOR { BROWSE | XML { RAW | AUTO | EXPLICIT }
[ , XMLDATA ]
[ , ELEMENTS ]
[ , BINARY BASE64 ]
}
]
參數
BROWSE
指定當查看 DB-Library 瀏覽模式游標中的數據時允許更新。如果表包含時間戳列(用 timestamp 數據類型定義的列),表有唯一索引且 FOR BROWSE 選項在 SELECT 語句的最後發送到 SQL Server,則可以在應用程式中瀏覽該表。
說明 在含有 FOR BROWSE 選項的 SELECT 語句中無法使用 <lock_hint> HOLDLOCK。
FOR BROWSE 選項不能出現在用 UNION 運算符聯接的 SELECT 語句中。
XML
指定查詢結果將作為 XML 文檔返回。必須指定下列 XML 模式之一:RAW、AUTO、EXPLICIT。
RAW
獲得查詢結果並將結果集內的各行轉換為 XML 元素,用一般標識符 <row /> 作為元素標記。
測試:
select top 2 圖書編號=BookNo,圖書名稱=BookName from sys_books as圖書信息 FOR XML raw
結果:
<row 圖書編號="B001" 圖書名稱="1"/><row 圖書編號="B002" 圖書名稱="體育報(上海)"/>
AUTO
以簡單的嵌套 XML 樹返回查詢結果。在 FROM 子句內,每個在 SELECT 子句中至少有一列被列出的表都表示為一個 XML 元素。SELECT 子句中列出的列映射到適當的元素特性。
測試:
select top 2 圖書編號=BookNo,圖書名稱=BookName from sys_books as 圖書信息 FOR XML auto
結果:
<圖書信息 圖書編號="B001" 圖書名稱="1"/><圖書信息 圖書編號="B002" 圖書名稱="體育報(上海)"/>
EXPLICIT
指定顯式定義所得到的 XML 樹的形狀。使用此種模式,要求以一種特定的方式編寫查詢,以便顯式指定有關期望的嵌套的附加信息。
XMLDATA
返回架構,但不將根元素添加到結果中。如果指定了 XMLDATA,它將被追加到文檔上。
ELEMENTS
指定列作為子元素返回。否則,列將映射到 XML 特性。
測試:
select top 2 圖書編號=BookNo,圖書名稱=BookName from sys_books as 圖書信息 FOR XML AUTO,ELEMENTS
結果:
<圖書信息><圖書編號>B001</圖書編號><圖書名稱>1</圖書名稱></圖書信息><圖書信息><圖書編號>B002</圖書編號><圖書名稱>體育報(上海)</圖書名稱></圖書信息>
NARY BASE64
指定查詢返回二進位 base64 編碼格式的二進位數據。使用 RAW 和 EXPLICIT 模式檢索二進位數據時,必須指定該選項。這是 AUTO 模式中的預設值。