婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用sp_xml_preparedocument處理XML文檔的方法

使用sp_xml_preparedocument處理XML文檔的方法

熱門標簽:數字匠心電銷機器人 沒聽見電話機器人幫你接 蘭州語音外呼系統運營商 陜西電銷外呼系統好用嗎 al智能電話機器人 成都電話外呼系統一般多少錢 銀川高頻外呼回撥系統多少錢 如何做地圖標注圖鋪 最新人工智能電銷機器人

有時會在存儲過程中處理一些XML格式的數據,所以會用到sp_xml_preparedocument,他可以將XML數據進行讀取,然后使用 MSXML 分析器 (Msxmlsql.dll) 對其進行分析。我們就可以很容易的在存儲過程中得到XML中我們想要的數據。下面的代碼就是使用sp_xml_preparedocument讀取XML:

復制代碼 代碼如下:

DECLARE @hdoc int
DECLARE @doc varchar(1000)
SET @doc ='
ROOT>
Customer CustomerID="VINET" ContactName="Paul Henriot">
Order CustomerID="VINET" EmployeeID="5" OrderDate="1996-07-04T00:00:00">
OrderDetail OrderID="10248" ProductID="11" Quantity="12"/>
OrderDetail OrderID="10248" ProductID="42" Quantity="10"/>
/Order>
/Customer>
Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
Order CustomerID="LILAS" EmployeeID="3" OrderDate="1996-08-16T00:00:00">
OrderDetail OrderID="10283" ProductID="72" Quantity="3"/>
/Order>
/Customer>
/ROOT>'
EXEC sp_xml_preparedocument @hdoc OUTPUT, @doc

上面只是讀取了XML,要想獲取XML數據還需要使用OPENXML,代碼如下:
復制代碼 代碼如下:

SELECT *
FROM openxml(@hdoc,'/ROOT/Customer',1)
WITH (CustomerID VARCHAR(40),ContactName VARCHAR(40))

OPENXML有三個參數:
第一個是sp_xml_preparedocument讀取是的OUTPUT參數,在本示例中就是@hdoc;
第二個是一個XPath表達式,用來獲取指定位置的數據;
第三個是一個可選項,用來表示獲取的方式,有0,1,2,8四種取值,詳細解釋請看
FROM后面的WITH也是可選的,用來指定獲取哪些數據字段,上面代碼中只取了CustomerID和ContactName。上面的查詢結果如下:
CustomerID ContactName
—————————————- —————————————-
VINET Paul Henriot
LILAS Carlos Gonzlez
如果不指定WITH子句,查詢出來的是一個默認的表結構,如下:


表格列的解釋說明:

列名 數據類型 說明
id bigint 文檔節點的唯一 ID。

根元素的 ID 值為 0。保留負 ID 值。

parentid bigint 標識節點的父節點。此 ID 標識的父節點不一定是父元素。具體情況取決于此 ID 所標識節點的子節點的節點類型。例如,如果節點為文本節點,則其父節點可能是一個屬性節點。

如果節點位于 XML 文檔的頂層,則其 ParentID 為 NULL。

節點類型 int 標識節點類型,是對應于 XML 對象模型 (DOM) 節點類型編號的一個整數。

下列值是可以顯示在此列中以指明節點類型的值:

1 = 元素節點

2 = 屬性節點

3 = 文本節點

4 = CDATA 部分節點

5 = 實體引用節點

6 = 實體節點

7 = 處理指令節點

8 = 注釋節點

9 = 文檔節點

10 = 文檔類型節點

11 = 文檔片段節點

12 = 表示法節點

有關詳細信息,請參閱 Microsoft XML (MSXML) SDK 中的“節點類型屬性”主題。

localname nvarchar(max) 提供元素或屬性的本地名稱。如果 DOM 對象沒有名稱,則為 NULL。
prefix nvarchar(max) 節點名稱的命名空間前綴。
namespaceuri nvarchar(max) 節點的命名空間 URI。如果值是 NULL,則命名空間不存在。
datatype nvarchar(max) 元素或屬性行的實際數據類型,否則是 NULL。數據類型是從內聯 DTD 中或從內聯架構中推斷得出。
prev bigint 前一個同級元素的 XML ID。如果前面沒有同級元素,則為 NULL。
text ntext 包含文本形式的屬性值或元素內容。如果邊緣表項不需要值則為 NULL。

在WITH子句中,我們還可以通過設置來獲取父級元素的屬性值:

復制代碼 代碼如下:

DECLARE @hdoc int
DECLARE @doc varchar(1000)
SET @doc ='
ROOT>
Customer CustomerID="VINET" ContactName="Paul Henriot">
Order OrderID="10248" CustomerID="VINET" EmployeeID="5"
OrderDate="1996-07-04T00:00:00">
OrderDetail ProductID="11" Quantity="12"/>
OrderDetail ProductID="42" Quantity="10"/>
/Order>
/Customer>
Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
Order OrderID="10283" CustomerID="LILAS" EmployeeID="3"
OrderDate="1996-08-16T00:00:00">
OrderDetail ProductID="72" Quantity="3"/>
/Order>
/Customer>
/ROOT>'

EXEC sp_xml_preparedocument @hdoc OUTPUT, @doc
SELECT *
FROM OPENXML (@hdoc, '/ROOT/Customer/Order/OrderDetail',2)
WITH (OrderID int '../@OrderID',
CustomerID varchar(10) '../@CustomerID',
OrderDate datetime '../@OrderDate',
ProdID int '@ProductID',
Qty int '@Quantity')

查詢的結果為:
OrderID CustomerID OrderDate ProdID Qty
———– ———- ———————– ———– ———–
10248 VINET 1996-07-04 00:00:00.000 11 12
10248 VINET 1996-07-04 00:00:00.000 42 10
10283 LILAS 1996-08-16 00:00:00.000 72 3
有時候XML中的數據并不是以屬性的方式存在,而是直接放在節點中,如下:
復制代碼 代碼如下:

DECLARE @doc varchar(1000)
SET @doc ='
ROOT>
Customer CustomerID="VINET" ContactName="Paul Henriot">
Order>
OrderID>10248/OrderID>
CustomerID>VINET/CustomerID>
EmployeeID>5/EmployeeID>
OrderDate>1996-07-04T00:00:00/OrderDate>
/Order>
/Customer>
/ROOT>'

此時要獲Order節點下的各項的值,可以用下面方法:
復制代碼 代碼如下:

DECLARE @hdoc int
DECLARE @doc varchar(1000)
SET @doc ='
ROOT>
Customer CustomerID="VINET" ContactName="Paul Henriot">
Order>
OrderID>10248/OrderID>
CustomerID>VINET/CustomerID>
EmployeeID>5/EmployeeID>
OrderDate>1996-07-04T00:00:00/OrderDate>
/Order>
/Customer>
/ROOT>'
EXEC sp_xml_preparedocument @hdoc OUTPUT, @doc
SELECT *
FROM OPENXML (@hdoc, '/ROOT/Customer/Order',1)
WITH (OrderID int 'OrderID',
CustomerID varchar(10) 'CustomerID',
EmployeeID int 'EmployeeID',
OrderDate datetime 'OrderDate')

查詢結果如下:
OrderID CustomerID EmployeeID OrderDate
———– ———- ———– ———————–
10248 VINET 5 1996-07-04 00:00:00.000
可以看出是取屬性值還是取節點的文本的值區別在于WITH子句的第三個參數是否有@符號

標簽:邢臺 本溪 朔州 宜春 遼源 通化 鹽城 巴彥淖爾

巨人網絡通訊聲明:本文標題《使用sp_xml_preparedocument處理XML文檔的方法》,本文關鍵詞  使用,xml,preparedocument,處理,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《使用sp_xml_preparedocument處理XML文檔的方法》相關的同類信息!
  • 本頁收集關于使用sp_xml_preparedocument處理XML文檔的方法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美日韩在线播放一区| 久久久久久久久97黄色工厂| 91精品综合久久久久久| 久久久久久毛片| 亚洲成人先锋电影| 一本一道久久a久久精品| 精品久久一区二区三区| 亚洲午夜一区二区三区| 国产黄色91视频| 精品1区2区在线观看| 婷婷久久综合九色综合伊人色| 成人av资源站| 欧美国产97人人爽人人喊| 青青草伊人久久| 7777精品久久久大香线蕉| 亚洲精品中文字幕乱码三区| 国产suv精品一区二区883| 337p日本欧洲亚洲大胆精品| 秋霞影院一区二区| 欧美精品1区2区3区| 亚洲精选免费视频| 99精品视频免费在线观看| 中文字幕在线不卡一区二区三区| 国产suv一区二区三区88区| 久久无码av三级| 国产精品一卡二卡| 国产三区在线成人av| 国产精品一区二区x88av| 久久精子c满五个校花| 国产原创一区二区| 欧美激情一区二区在线| 东方欧美亚洲色图在线| 国产精品嫩草99a| 91一区在线观看| 亚洲精品国产第一综合99久久| 成人免费视频国产在线观看| 国产精品福利一区| 色婷婷综合久久久久中文一区二区| 国产精品国产自产拍高清av| 成人av免费网站| 一区二区三区在线影院| 欧美亚州韩日在线看免费版国语版| 亚洲综合成人网| 欧美一区二区三区在| 经典三级视频一区| 综合久久综合久久| 欧美色图在线观看| 美女国产一区二区三区| 久久久久国产精品麻豆ai换脸| www.综合网.com| 亚洲午夜精品在线| 日韩免费成人网| 99在线精品观看| 亚洲成人精品影院| 国产亚洲成aⅴ人片在线观看| 92国产精品观看| 日本v片在线高清不卡在线观看| 精品毛片乱码1区2区3区| 99精品黄色片免费大全| 亚洲国产精品欧美一二99| 欧美videos中文字幕| 不卡的av电影在线观看| 偷拍一区二区三区四区| 国产欧美一区二区三区沐欲| 欧美做爰猛烈大尺度电影无法无天| 日韩不卡在线观看日韩不卡视频| 久久久久久久久伊人| 色婷婷亚洲综合| 狠狠久久亚洲欧美| 亚洲v中文字幕| 中文字幕在线不卡一区| 欧美一区二区三区精品| 91在线观看一区二区| 免费欧美高清视频| 一区二区三区高清在线| 欧美精品一区在线观看| 欧美日韩综合在线| 不卡一区在线观看| 久久66热偷产精品| 亚洲五月六月丁香激情| 中文字幕在线观看不卡视频| 欧美大胆人体bbbb| 国产一区二区三区av电影| 亚洲成人免费在线| 亚洲激情自拍视频| 国产精品第一页第二页第三页| 欧美一级视频精品观看| 在线观看区一区二| 色网综合在线观看| 91亚洲精品一区二区乱码| 国产麻豆欧美日韩一区| 日韩va欧美va亚洲va久久| 亚洲一区二区三区四区在线| 日本一区二区高清| 亚洲国产高清在线| 国产午夜久久久久| 久久综合99re88久久爱| 91精品一区二区三区久久久久久| 在线亚洲精品福利网址导航| 91污在线观看| 99国产精品国产精品毛片| 国产69精品久久久久毛片| 紧缚捆绑精品一区二区| 精品在线你懂的| 免费成人av在线| 日韩在线一二三区| 青青国产91久久久久久| 蜜桃av一区二区三区| 久久99精品国产| 国产乱子伦视频一区二区三区 | 狠狠狠色丁香婷婷综合激情 | 国产欧美精品区一区二区三区| 日韩欧美中文字幕一区| 日韩一区二区三区电影| 正在播放一区二区| 日韩欧美国产一区在线观看| 91麻豆精品国产91久久久资源速度| 在线电影院国产精品| 在线播放欧美女士性生活| 在线播放91灌醉迷j高跟美女| 欧美一区二区视频观看视频| 日韩女优视频免费观看| 久久久精品国产免大香伊| 国产精品三级电影| 亚洲精品欧美激情| 一区二区三区四区在线播放| 亚洲一区二区三区激情| 日本一区中文字幕 | 日韩电影免费在线观看网站| 日韩av在线发布| 国产精品夜夜爽| 色域天天综合网| 日韩一区二区影院| 久久影院午夜论| 亚洲色图一区二区三区| 亚洲成a人v欧美综合天堂下载| 另类专区欧美蜜桃臀第一页| 国产成人免费视频网站| 色一区在线观看| 日韩精品中文字幕一区| 国产精品―色哟哟| 午夜精品一区二区三区免费视频 | 成人精品小蝌蚪| 欧美日韩亚洲综合在线| 久久久影视传媒| 亚洲国产你懂的| 久久精品国产成人一区二区三区| 国产不卡视频在线观看| 欧美午夜精品一区| 亚洲精品一区二区三区99| 亚洲黄色小说网站| 国产一区二区网址| 欧美日韩免费在线视频| 国产拍揄自揄精品视频麻豆| 亚洲第一成年网| 成人app软件下载大全免费| 7878成人国产在线观看| 国产精品久久久久久久久免费樱桃 | 欧美日韩精品欧美日韩精品一| 国产午夜精品一区二区三区视频| 亚洲一区自拍偷拍| 成人涩涩免费视频| 亚洲精品一区二区三区在线观看| 亚洲一二三级电影| 丁香一区二区三区| 久久久亚洲国产美女国产盗摄 | 91精品在线麻豆| 亚洲免费观看高清完整| 国产裸体歌舞团一区二区| 欧美日韩久久一区二区| 亚洲国产精品黑人久久久| 看片的网站亚洲| 91精品国产福利在线观看| 亚洲综合图片区| 色婷婷av一区| 国产精品久久久久久久第一福利| 蜜臀久久99精品久久久久久9| 一本色道久久综合精品竹菊| 国产丝袜在线精品| 国产在线国偷精品产拍免费yy| 欧美日本在线视频| 亚洲国产美国国产综合一区二区| 99在线精品视频| 亚洲理论在线观看| 99在线精品观看| 国产精品成人午夜| 不卡av电影在线播放| 国产精品色哟哟网站| 国产成人精品三级麻豆| 精品国产sm最大网站免费看| 男人操女人的视频在线观看欧美 | 九九视频精品免费| 日韩欧美成人一区| 久久国产精品99久久久久久老狼| 91精品福利在线一区二区三区| 亚洲国产日日夜夜| 欧美日韩高清在线| 麻豆成人av在线| 欧美精品一区二区久久久| 国内精品自线一区二区三区视频|