SQL Server2005的XML数据类型之基础篇 (2)
生活随笔
收集整理的這篇文章主要介紹了
SQL Server2005的XML数据类型之基础篇 (2)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
四、 XML類型方法
到此為止,上面的示例已經展示了XML數據類型僅能用作一種blob類型數據,但是這正是XML數據類型顯示其自身力量的地方。XML數據類型支持使用UDT點(myXml.operation())語法進行調用的若干方法。下表1中列舉出所支持的方法。
表格1:XML數據類型方法。
在下面幾節中,你要使用一個表Team,它的每一個行中包含一個小組的名字。在每一行中,有一個包含有關于該小組的XML數據的TeamDoc行:
在這些例子中,我們假定下面的XML文檔存在于表中的Braves行中:
query方法
注意:你可以在表和視圖列、T-SQL語句或存儲過程的參數中使用XML。
這個方法允許你指定一個要計算的Xquery或XPath表達式,該方法的結果是一個XML數據類型對象。它的具體語法形式如下:
第一個參數總是一個Xquery表達式。下面的例子使用一個查詢來返回一個XML文檔-其中包含有關每一個小組的投球手的信息:
這個語句產生如下結果:
這個query方法允許你查詢和返回與你指定的表達式相匹配的結點列表。該方法的真正威力來自于XQuery語法,我們將在本文后面再詳細討論。
到此為止,上面的示例已經展示了XML數據類型僅能用作一種blob類型數據,但是這正是XML數據類型顯示其自身力量的地方。XML數據類型支持使用UDT點(myXml.operation())語法進行調用的若干方法。下表1中列舉出所支持的方法。
表格1:XML數據類型方法。
| 方法名 | 描述 |
| query | 執行一個XML查詢并且返回查詢的結果 |
| exists | 執行一個XML查詢,并且如果有結果的話返回值1 |
| value | 計算一個查詢以從XML中返回一個簡單的值 |
| modify | 在XML文檔的適當位置執行一個修改操作 |
| nodes | 允許你把XML分解到一個表結構中 |
在下面幾節中,你要使用一個表Team,它的每一個行中包含一個小組的名字。在每一行中,有一個包含有關于該小組的XML數據的TeamDoc行:
| CREATE TABLE Team ( TeamID int identity not null, TeamDoc xml DEFAULT '<Team />' NOT NULL ) |
在這些例子中,我們假定下面的XML文檔存在于表中的Braves行中:
| <Team name="Braves"> <Players> <Pitcher name="John Smoltz" role="Closer"/> <Pitcher name="Russ Ortiz" role="Starter" /> <ThirdBase name="Chipper Jones" role="Starter" bats="switch"/> </Players> </Team> |
query方法
注意:你可以在表和視圖列、T-SQL語句或存儲過程的參數中使用XML。
這個方法允許你指定一個要計算的Xquery或XPath表達式,該方法的結果是一個XML數據類型對象。它的具體語法形式如下:
| query(XQuery) |
第一個參數總是一個Xquery表達式。下面的例子使用一個查詢來返回一個XML文檔-其中包含有關每一個小組的投球手的信息:
| SELECT TeamDoc.query('/Team/Players/Pitcher') FROM Team |
這個語句產生如下結果:
| ---------------------------------------------- <Pitcher name="John Smoltz" role="Closer" /> <Pitcher name="Russ Ortiz" role="Starter" /> (1 row(s) affected) |
這個query方法允許你查詢和返回與你指定的表達式相匹配的結點列表。該方法的真正威力來自于XQuery語法,我們將在本文后面再詳細討論。
?
共5頁: 上一頁 [1] 2 [3] [4] [5] 下一頁轉載于:https://www.cnblogs.com/luohoufu/archive/2008/04/07/1140988.html
總結
以上是生活随笔為你收集整理的SQL Server2005的XML数据类型之基础篇 (2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 天涯的诗 (转)
- 下一篇: document.body.client