您的位置:首页 > 数据库

SQLXml 处理带namespace的xml

2008-06-26 14:37 183 查看
查阅了MSDN,其实很简单

sp_xml_preparedocument
hdoc
OUTPUT
[,xmltext]
[,xpath_namespaces]
Youcanspecifynsusingthethirdparameter.

declare@MailContentasnvarchar(max)
select@MailContent=MessageBodyfromMailStorerwhereID=2

--print@MailContent
DECLARE@XmlHandlerint
--CreateaninternalrepresentationoftheXMLdocument.
EXECsp_xml_preparedocument@XmlHandlerOUTPUT,@MailContent,'<ns0:RN_4C1_OUTxmlns:ns0="http://_4C1_InventoryHold_Intel.MailMessage"/>'
SELECT'4C1InventoryHoldOn/Off'asHeader,*
FROMOPENXML(@XmlHandler,'/ns0:RN_4C1_OUT/InventoryLine',1)
with
(
Statusnvarchar(50)'Status',
Datenvarchar(50)'DocDate',
IDocNonvarchar(50)'IDocNo',
SKUnvarchar(50)'SKU',
Quantitynvarchar(50)'Qty',
RequestBynvarchar(50)'RequestBy'
)
--清除xml文件句柄,释放内存
execsp_xml_removedocument@XmlHandler
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: