SQL Server 2005 XML 操作总结(七)属性操作——插入、修改操作
========插入操作=========
====插入单个属性=====
--为第一个book节点插入属性name值为"直接插入"
set @data.modify('insert (attribute name {"直接插入"})into (/bookstore/book)[1]')
/*output:
<book category="COOKING" name="直接插入">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
*/
======插入多个属性=======
--为第一个book节点插入属性Id值为"多值插入",name值为"多值插入"
set @data.modify('insert (attribute Id {"多值插入"},attribute name {"多值插入"})
into (/bookstore/book)[1]')
/*output:
<book category="COOKING" Id="多值插入1" name="多值插入2">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
*/
======利用变量插入=========
--为第一个book节点插入属性var值为"变量插入"
declare @var nvarchar(10)
set @var='变量插入';
set @data.modify('insert (attribute var {sql:variable("@var")})into
(/bookstore/book)[1]')
/*output:
<book category="COOKING" var="变量插入">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
*/
复制代码
========修改操作=========
======一般修改=======
--将category=" CHILDREN "的第一个book节点的category属性值改为"CHILD"
set @data.modify('replace value of (bookstore/book[@category="CHILDREN"]/@category)[1]
with "CHILD"')
/*output:
<book category="CHILD">
<title lang="jp">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>*/
=======根据条件修改========
--将category=" WEB"的第二个book节点的category属性值改为"条件替换1"
--(如果第四个book节点的author数量大于1),反之改为“条件替换2”
set @data.modify('replace value of (/bookstore/book[@category="WEB"]/@category)[2]with
(if(count(/bookstore/book[4]/author)>1) then "条件替换1" else "条件替换2")' )
/*output:
<book category="条件替换2">
<title lang="cn">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>*/
=======根据属性名称修改========
--根据属性名称“category”来更新属性值
DECLARE @attributename VARCHAR(20)
DECLARE @title VARCHAR(20)
SELECT @attributename = 'category'--需要定位的属性名称
SELECT @title = 'new category' --属性需要更新的新值
SET @data.modify('
replace value of
(/bookstore/book/@*[local-name()=sql:variable("@attributename")])[1]
with sql:variable("@title")')
/*output:
<book category="new category">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
*/
复制代码
转载于:https://blog.51cto.com/shenlan/807529
SQL Server 2005 XML 操作总结(七)属性操作——插入、修改操作相关推荐
- SQL Server 2005中专用管理员连接 (DAC) 使用技巧修改系统表的方法
Server 2005 专用管理员连接 (DAC) 使用技巧 1 什么是专用管理员连接? SQL Server 2005 为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用. 2 ...
- Introduction to SQL Server 2005 XML
Moved to http://blog.tangcs.com/2008/06/01/introduce-sql-server-2005-xml/ 转载于:https://www.cnblogs.co ...
- SQL SERVER 2005 进行XML查询
1. CREATE TABLE Team ( TeamID int identity not null, TeamDoc xml DEFAULT '<Team />' NOT NULL ) ...
- SQL Server对Xml字段的操作
T-Sql操作Xml数据 一.前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型.用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列:此外,还允许带有变量和 ...
- 打破第一范式的要求 (中英对照)Michael Rys 对 SQL Server 2005 中XML 的 评论——对微软SQL Server项目经理Michael Rys博士的采访
Michael Rys on XML in SQL Server 2005 Michael Rys对SQL Server 2005中XML的评论 Michael Rys is one of two p ...
- SQL Server 2005 For XML[学习]
for xml 扩展功能 SQL Server 2005 通过 select 语句的 for xml 扩展功能,支持在服务器端以XML 文档的形式返回SQL 查询的结果. 语法如下: select 表 ...
- Visual C# 2008+SQL Server 2005 数据库与网络开发--9.1.1 SQL Server 2005中的XML功能
在SQL Server 2005中,对XML的支持已经集成到数据库本身的所有组件中,主要包括以下几方面. 支持XML格式的数据类型. 可以对XML格式的数据或者变量进行XQuery的查询. 增强了XM ...
- Visual C# 2008+SQL Server 2005 数据库与网络开发-- 9.1 对XML的支持
和以前的SQL Server数据库版本相比较,SQL Server 2005在XML支持方面有了很大的改善,如支持XML数据类型等.经过这些显著的改善,开发人员可以通过SQL Server 2005更 ...
- SQL Server 2005 中的客户端 XML 处理
SQL Server 2005 中的客户端 XML 处理 XML 数据类型的客户端支持 .NET 框架 V2.0 中的 ADO.NET XML 支持 在 SqlDataReader.GetSqlXml ...
最新文章
- 监控利器Zabbix之主动模式和被动模式
- 生成多个互不重叠的不同半径圆
- Question for recommendation system, which is a baseline
- wpfのuri(让你完全明白wpf的图片加载方式以及URI写法)
- 9款基于CSS3 Transitions实现的鼠标经过图标悬停特效
- Python机器学习 使用sklearn构建决策树复习
- angular.js双向数据绑定实现动画特效
- python数独游戏源代码_Python数独游戏源代码
- git工作流学习记录
- Ani网页木马生成器
- plm系统服务器,PLM产品全生命周期管理 - 产品数据服务系统
- ajax实现直播功能,jquery实现直播弹幕效果
- 人类Humankind for Mac(历史战略游戏)
- 苹果 Mac Big Sur 如何更改锁屏时间?
- 模拟cmos集成电路(4)
- Java介绍,什么是Java?
- 【Ubuntu版】制作U盘启动盘
- 14 EXCEL仪表盘制作1
- IE6 IE7 并存
- trunk端口配置的PVID