XML--修改XML数据

DECLARE @xmlDoc XML
set @xmlDoc='<root>
 
<book id="0001">
 
<title>C# Program</title>
 
<author>Jerry</author>
 
<price>50</price>
 
</book>
 
<book id="0002">
 
<title>Java Program</title>
 
<author>Tom</author>
 
<price>49</price>
 
</book>
 
</root>'
 
 
SELECT @xmlDoc
 
--====================================================
--查询节点
select @xmlDoc.query('/book/title')
 
--====================================================
--查询节点值
select @xmlDoc.value('(/book/@id)[1]', 'nvarchar(max)')
select @xmlDoc.value('(/book/title)[1]', 'nvarchar(max)')
 
 
--====================================================
--更新节点
set @xmlDoc.modify('replace value of (/root/book[@id=0001]/price/text())[1] with "100"')
 
SELECT @xmlDoc.query('/root/book[@id=0001]/price')
--====================================================
--删除节点
set @xmlDoc.modify('delete /root/book[@id=0002]')
--====================================================
--插入节点
set @xmlDoc.modify('insert <isbn>78-596-134</isbn> before (/root/book[@id=0001]/price)[1]')
--====================================================
--添加属性
set @xmlDoc.modify('insert attribute date{"2008-11-27"} into (/root/book[@id=0001])[1]')
--====================================================
--删除属性
set @xmlDoc.modify('delete root/book[@id="0001"]/@id')
--====================================================
--修改属性
set @xmlDoc.modify('replace value of (root/book[@id="0001"]/@id)[1] with "0005"')


参考:http://www.cnblogs.com/youring2/archive/2008/11/27/1342288.html

posted on   笑东风  阅读(611)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现

导航

点击右上角即可分享
微信分享提示