日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

SQL Server 2005 XML 操作总结(七)属性操作——插入、修改操作

發布時間:2025/3/20 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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)&gt;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 操作总结(七)属性操作——插入、修改操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。