SQLXml 处理带namespace的xml
2008-06-26 14:37
183 查看
查阅了MSDN,其实很简单
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
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="
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
相关文章推荐
- SQL中对XML的处理
- 通过xml处理sql语句时对小于号与大于号的处理转换
- 无法在SQL 2005系统数据库中执行的T-SQL语句(XML处理)
- 无法在SQL 2005系统数据库中执行的T-SQL语句(XML处理)
- 【转】灵活运用 SQL SERVER FOR XML PATH。用于方便处理生成视图
- 无法在SQL2005系统数据库中执行的T-SQL语句(XML处理)
- struts.xml属性重名处理:关于<package><action><result>的name和namespace属性同名时struts2的处理
- SQL 处理 XML 简介
- MyBatis SQL在xml中,处理大于小于号的方法
- xml中sql的大于号小于号处理
- 无法在SQL 2005系统数据库中执行的T-SQL语句(XML处理)
- 无法在SQL 2005系统数据库中执行的T-SQL语句(XML处理)
- Ibatis SQL配置文件.xml中文乱码处理
- 通过xml处理sql语句时对小于号与大于号的处理转换
- 无法在SQL 2005系统数据库中执行的T-SQL语句(XML处理)
- SQL处理XML
- Mybatis Mapper.xml中sql特殊字符处理
- JDOM处理带Namespace的XML文件
- 处理:SqlServer FOR XML 无法对节点 'NoName' 的数据进行序列化,因为它包含在 XML 中不允许出现的字符(0x0000)。
- Mybatis中sqlmapper的xml文件中对“<”二义性的处理