濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > sqlserver2005 xml字段的讀寫操作

sqlserver2005 xml字段的讀寫操作

熱門標(biāo)簽:北京智能外呼系統(tǒng)供應(yīng)商家 孝感銷售電銷機(jī)器人廠家 江西穩(wěn)定外呼系統(tǒng)供應(yīng)商 中國(guó)地圖標(biāo)注省份用什么符號(hào) 奧維地圖標(biāo)注字體大小修改 無(wú)錫梁溪公司怎樣申請(qǐng)400電話 電話機(jī)器人錄音師薪資 智能電銷機(jī)器人教育 高德地圖標(biāo)注電話怎么沒(méi)了
1.創(chuàng)建xml字段
在表xmlTest內(nèi)創(chuàng)建一個(gè)字段,命名_x,設(shè)置數(shù)據(jù)類型為xml。
2.寫入xml
insert into xmlTest (_x) values('
root>
item attr1="a1" attr2="a2">item11/item>
item attr1="a1" attr2="a2">item12/item>
/root>
')
go
如此再插入一條記錄:
insert into xmlTest (_x) values('
root>
item attr1="b1" attr2="b2">item21/item>
item attr1="b1" attr2="b2">item22/item>
/root>
')
3.查詢數(shù)據(jù)
3.1 查詢字段所有數(shù)據(jù)
select _x from xmlText
結(jié)果如圖:

3.2 查詢r(jià)oot下面的第一個(gè)item節(jié)點(diǎn)
select _x.query('root/item[1]')
from xmlTest
結(jié)果:

3.3 查詢r(jià)oot下面的第一個(gè)item節(jié)點(diǎn)的值
select _x.value('(root/item)[1]','varchar(50)')
from xmlTest
結(jié)果:

3.3 查詢r(jià)oot下面的第二個(gè)item節(jié)點(diǎn)的attr2屬性值
select _x.value('(root/item/@attr2)[2]','varchar(50)')
from xmlTest
結(jié)果:

3.4 查詢表中每條記錄的xml字段的item節(jié)點(diǎn)值,全部列出來(lái)
SELECT t2.c1.value('.','varchar(20)') as items
from xmlTest
cross apply _x.nodes('root/item') as t2(c1)
結(jié)果:

3.5 查詢表中id=1記錄的xml的所有item字段的attr2屬性值
SELECT t2.c1.value('@attr2','varchar(20)') as attr2
from xmlTest
cross apply _x.nodes('root/item') as t2(c1)
where id='1'

結(jié)果:

3.6 查詢id為1的所有節(jié)點(diǎn)中attr1屬性為a1的第一個(gè)匹配節(jié)點(diǎn)的attr2屬性值

select _x.value('(root/item[@attr1="a1"]/@attr2)[1]','varchar(50)')
from xmlTest where id='1'

結(jié)果:

3.7 多表查詢

例如:存在另外1個(gè)table:t2,其字段xmlid關(guān)聯(lián)表xmlTest,而attr1關(guān)聯(lián)xmlTest的_x字段中的attr1屬性值。

查詢表xmlTest中id=‘1'記錄中_x字段內(nèi)item節(jié)點(diǎn)中attr1為表t2中attr1字段值時(shí),item節(jié)點(diǎn)中attr2的屬性值

select xmlTest._x.value('(root/item[@attr1=sql:column("t2.attr1")]/@attr2)[1]','varchar(50)') as attr2,t2.attr1
from xmlTest join t2 on t2.xmlid=xmlTest.id
where xmlTest.id='1'

4.修改數(shù)據(jù)
4.1 修改表中id=1記錄的第一個(gè)item節(jié)點(diǎn)值
UPDATE xmlTest
set _x.modify('replace value of (root/item/text())[1] with "xxxxx"')
where id='1'

select _x.query('root/item[1]') as item1
from xmlTest
結(jié)果:

4.2 修改表中id=2記錄的第二個(gè)item節(jié)點(diǎn)的attr2屬性值
UPDATE xmlTest
set _x.modify('replace value of (root/item/@attr2)[2] with "2222b"')
where id='2'

select _x.query('root/item[2]') as item1
from xmlTest
結(jié)果:

您可能感興趣的文章:
  • SQLServer XML數(shù)據(jù)的五種基本操作
  • C#怎樣才能將XML文件導(dǎo)入SQL Server
  • SQLServer XML查詢快速入門(18句話)
  • SqlServer參數(shù)化查詢之where in和like實(shí)現(xiàn)之xml和DataTable傳參介紹
  • Sqlserver 2005使用XML一次更新多條記錄的方法
  • 在SQL Server中將數(shù)據(jù)導(dǎo)出為XML和Json的方法
  • SQLServer XML查詢18句話入門教程
  • SQL Server解析XML數(shù)據(jù)的方法詳解

標(biāo)簽:通化 海北 荊州 臨滄 阜陽(yáng) 泰州 那曲 齊齊哈爾

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《sqlserver2005 xml字段的讀寫操作》,本文關(guān)鍵詞  sqlserver2005,xml,字段,的,讀寫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《sqlserver2005 xml字段的讀寫操作》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于sqlserver2005 xml字段的讀寫操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    龙海市| 承德市| 龙陵县| 温泉县| 宁陵县| 孝义市| 长阳| 株洲市| 盱眙县| 桐乡市| 台湾省| 荆州市| 仲巴县| 连州市| 会东县| 搜索| 秀山| 盐津县| 嘉峪关市| 三穗县| 新平| 黄大仙区| 临漳县| 阿拉善右旗| 百色市| 来宾市| 郧西县| 鹿邑县| 太仓市| 蓬溪县| 荥阳市| 黑山县| 松滋市| 祁门县| 宁安市| 濮阳县| 周口市| 平塘县| 茶陵县| 子洲县| 同江市|