Sql Server 对xml类型的操作
来源:互联网 发布:车管家软件 编辑:程序博客网 时间:2024/05/22 02:14
declare @XML XML
SET @XML='<root>
<OLDVALUE>
<H_Action id="1130">030</H_Action>
<D_Action>030</D_Action>
<OrderCompany>00220</OrderCompany>
<OrderNumber>10004035</OrderNumber>
<OrderType>SO</OrderType>
<LineNumber>10.100</LineNumber>
</OLDVALUE>
<NEWVALUE>
<H_Action>040</H_Action>
<D_Action>040</D_Action>
<OrderCompany>00220</OrderCompany>
<OrderNumber>10004035</OrderNumber>
<OrderType>SO</OrderType>
<LineNumber>10.100</LineNumber>
<LineType>CS</LineType>
<LoadNumber>8811</LoadNumber>
</NEWVALUE>
</root>'
select c.value('H_Action[1]','varchar(20)') as H_Action,
c.value('D_Action[1]','varchar(20)') as D_Action,
c.value('OrderCompany[1]','varchar(20)') as OrderCompany,
c.value('OrderNumber[1]','varchar(20)') as OrderNumber,
c.value('OrderType[1]','varchar(20)') as OrderType,
c.value('LineNumber[1]','varchar(20)') as LineNumber
from @XML.nodes('//OLDVALUE') as T(C)
select c.value('H_Action[1]','varchar(20)') as H_Action,
c.value('D_Action[1]','varchar(20)') as D_Action,
c.value('OrderCompany[1]','varchar(20)') as OrderCompany,
c.value('OrderNumber[1]','varchar(20)') as OrderNumber,
c.value('OrderType[1]','varchar(20)') as OrderType,
c.value('LineNumber[1]','varchar(20)') as LineNumber,
c.value('LineType[1]','varchar(20)') as LineType,
c.value('LoadNumber[1]','varchar(20)') as LoadNumber
from @XML.nodes('//NEWVALUE') as T(C)
CREATE TABLE [dbo].[T_XML](
[ID] [int] NULL,
[DOC] [xml] NULL
)
--query
select doc.query('//NEWVALUE') from t_xml
select doc.query('(root/OLDVALUE/H_Action[@id="1130"])') from t_xml
--属性
select doc.value('(root/OLDVALUE/H_Action/@id)[1]','nvarchar(20)') from t_xml
select doc.value('(root/OLDVALUE/H_Action[@id])[1]','nvarchar(20)') from t_xml
--文本
select doc.value('(root/OLDVALUE/H_Action/text())[1]','nvarchar(20)') from t_xml
select doc.value('(root/OLDVALUE/H_Action[text()])[1]','nvarchar(20)') from t_xml
--exist
SELECT doc.exist('/root/OLDVALUE/H_Action[(text()[1] cast as xs:string ?)= xs:string("030")]') from t_xml
--modify
update t_xml set doc.modify('replace value of (/root/OLDVALUE/H_Action[@id="1130"]/text())[1] with "100"')
--delete
update t_xml set doc.modify('delete /root/OLDVALUE/H_Action[@id="1130"]')
--insert
update t_xml set doc.modify('insert <insert>by xf</insert> before (/root/OLDVALUE/H_Action[@id="1130"])[1]')
--添加属性
update t_xml set doc.modify('insert attribute date{"2008-11-27"} into (/root/OLDVALUE/H_Action[@id="1130"])[1]')
--删除属性
update t_xml set doc.modify('delete /root/OLDVALUE/H_Action[@id="1130"]/@date')
--修改属性
update t_xml set doc.modify('replace value of (/root/OLDVALUE/H_Action[@id="1130"]/@id)[1] with "030"')
- Sql Server 对xml类型的操作
- SQL Server对Xml字段的操作
- SQL server对Xml字段的操作
- SQL Server对Xml字段的操作
- Sql Server 对NTEXT类型的字段操作
- 对SQL Server 2005中XML操作函数的理解
- 对SQL Server 2005中XML操作函数的理解
- SQL server 2008 对XML 字段的操作
- SQL server语句对Xml字段的操作
- SQL Server 2008 对XML 数据类型操作
- 对SQL Server的操作
- SQL对XML的操作
- SQL对XML类型数据的处理
- SQL Server 2005对XML的支持
- Sql server对xml的使用
- 对SQL Server 2005中XML操作函数
- SQL Server 中对XML数据的五种基本操作
- SQL Server 中对XML数据的五种基本操作
- ffmpeg编码参数初始化
- 显示器黑屏故障分析
- VB无所不能之四:制作透明和半透明窗体
- c++ runtime symbol lookup error
- .net3.5 和vs2008中Ajax控件的使用--Accordion(可折叠)控件
- Sql Server 对xml类型的操作
- 用std::find查找文件流中的内容
- WINDOWS目录
- 整型计算器
- java.lang.UnsupportedClassVersionError: com/kingdee/eas/basedata/org/OrgType (Unsupported major.minor version 49.0)的解决
- 触发器的创建
- h264获取视频流信息- 复用h264字节流文件代码在RawH264File2Ts函数里面
- VS2005中ajax安装指南
- 感悟