将XML加载到游标sql server中

时间:2011-06-14 14:05:19

标签: sql-server xml

我知道如何将xml数据加载到游标中但是想知道是否总是必须指定数据类型in with block(),如

此处xml数据加载到@DetailXml变量

Exec sp_xml_preparedocument @XMLFormat OUTPUT, @DetailXml
-- Create Cursor from XML Table

Declare CurDetailRecord
Cursor For
Select productid,unit,rate,qty,amount
From Openxml (@XMLFormat, '/NewDataSet/PurchaseOrderDetail', 2)
With
(
productid Varchar(10),
unit Varchar(50),
rate decimal(18,2),
qty decimal(18,3),
amount decimal(18,2)
)

我只是想知道它是否总是强制性的,比如块

With
(
productid Varchar(10),
unit Varchar(50),
rate decimal(18,2),
qty decimal(18,3),
amount decimal(18,2)
)

或者我们也可以在没有阻止的情况下工作?

1 个答案:

答案 0 :(得分:0)

  

只是想知道它总是如此   必须像块一样

WITH块不是必需的。您可以以“边缘表格式”从OPENXML返回结果。

查看OPENXML的文档,示例C.以边表格式获取结果

http://msdn.microsoft.com/en-us/library/ms186918.aspx