SQL Xml字段的修改方法
SQL數(shù)據(jù)庫(kù)中的Xml字段應(yīng)該如何進(jìn)行修改和刪除操作呢?可能不少人都不是很了解。下面就為您介紹SQL Xml字段的修改方法,供您參考。
SQL的修改操作包括更新和刪除。SQL提供了modify()方法,實(shí)現(xiàn)對(duì)SQL Xml字段的修改操作。modify方法的參數(shù)為SQL Xml字段修改語(yǔ)言。XML修改語(yǔ)言類(lèi)似于SQL 的Insert、Delete、UpDate,但并不一樣。例如,我們希望將id為0001的書(shū)的價(jià)錢(qián)(price)修改為100, 我們就可以使用modify方法。代碼如下:
set @xmlDoc.modify('replace value of (/root/book[@id=0001]/price/text())[1] with "100"')
--得到id為0001的book節(jié)點(diǎn)
select @xmlDoc.query('(/root/book[@id="0001"])')
--刪除節(jié)點(diǎn)id為0002的book節(jié)點(diǎn)
set @xmlDoc.modify('delete /root/book[@id=0002]')
select @xmlDoc
--添加節(jié)點(diǎn)
set @xmlDoc.modify('insert <isbn>78-596-134</isbn> before (/root/book[@id=0001]/price)[1]')
select @xmlDoc.query('(/root/book[@id="0001"]/isbn)')
添加和刪除屬性:當(dāng)你學(xué)會(huì)對(duì)節(jié)點(diǎn)的操作以后,你會(huì)發(fā)現(xiàn),很多時(shí)候,我們需要對(duì)節(jié)點(diǎn)進(jìn)行操作。這個(gè)時(shí)候我們依然使用modify方法,例如,向id為0001的book節(jié)點(diǎn)中添加一個(gè)date屬性,用來(lái)存儲(chǔ)出版時(shí)間。代碼如下:
--添加屬性
set @xmlDoc.modify('insert attribute date{"2008-11-27"} into (/root/book[@id=0001])[1]')
select @xmlDoc.query('(/root/book[@id="0001"])')
--刪除屬性
set @xmlDoc.modify('delete root/book[@id="0001"]/@id')
select @xmlDoc.query('(/root/book)[1]')
--修改屬性
set @xmlDoc.modify('replace value of (root/book[@id="0001"]/@id)[1] with "0005"')
select @xmlDoc.query('(/root/book)[1]')
【編輯推薦】