程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> SQL Server數據庫中XML支持及查詢返回XML

SQL Server數據庫中XML支持及查詢返回XML

編輯:Oracle數據庫基礎
使 SQL Server 查詢結果轉化成 XML 字符串

1 在 SQL 語句後使用 for XML 子句。

[ FOR { XML { RAW | AUTO }

[ , XMLDATA ]

[ , ELEMENTS ]

[ , BINARY BASE64 ] } ]

將得到一個無根節點的XML片斷。

1.1 for XML raw

結果為 ...

1.2 for XML auto

結果為 <表名 列名="value" 列名="value" ... /><表名 ... />...

1.3 for xml raw,XMLdata

結果為

1.3.1 for xml auto,XMLdata

內為

1.4 elements使列作為子元素返回,binary base64采用base64編碼表示二進制數據。

使用 HTTP 訪問 SQL Server 並返回XML數據

1 安裝 IIS5.1 和 SQL Server 2000 以上版本。

2 使用SQL Server 的 '在 IIS 中配置SQL XML 支持' 工具創建一個虛擬目錄。

2.1 在 '常規' 選項卡 輸入 虛擬目錄 名稱,例如 Test。

2.2 在 '安全性' 輸入賬號密碼等等身份驗證信息。

2.3 '數據源' 可以選擇要連接的數據庫。

2.4 '設置'選項卡裡面有些細則,默認只有一個允許模板。

2.4.1 如果想用url?sql=sqlString 或者 url?sql=sqlString,則選擇好 '允許sql=或...的URL查詢'。

2.4.2 XPATH允許在URL後使用xpath表達式過濾得到的數據,POST允許通過表達提交查詢。

2.5 在URL中指定數據庫和表的名稱。

2.5.1 在'虛擬名稱'中創建相應的虛擬名稱,如'http://localhos/database/table/...'。

3 使用 SQL XML 進行查詢。

3.1 使用 GET 提交,在 URL 後附加 SQL 語句:

[url]http://localhos/test?sql=select+[/url]*+from+table+for+XML+auto&root=root

root=root可以指定根節點,否則會得到一個沒有根節點的XML片斷。

3.2 使用 XML模板 進行查詢。

3.2.1 直接在 URL 中指定模板。

[url]http://localhos/test?template=[/url]select+*+from+table+for+XML+auto

URL 中附加模板存在安全和長度限制,可以使用模板文件。

3.2.2 使用模板文件,例:

建立一個文本文件tmp.XML

select * from table for XML auto

存放在虛擬目錄test內。

使用URL 'http://localhos/test/tmp.XML' 便可以得到結果。

3.2.2.1 使用XPATH

[url]http://localhos/test/tmp.XML/col[/url][@att="1"]

'...tmp.xml/'後即可以接xpath表達式進行篩選,語法和普通XML中一樣。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved