示例:
創建Table
復制代碼 代碼如下:
CREATE TABLE [dbo].[xmlTable](
[id] [int] IDENTITY(1,1) NOT NULL,
[doc] [xml] NULL
)
一。插入數據
1.通過XML文件插入
1.xml
復制代碼 代碼如下:
<?xml version='1.0' encoding='utf-8' ?>
<dd>
<a id="2">dafaf2</a>
<a id="3">dafaf3</a>
<a id="4">dafaf4</a>
</dd>
復制代碼 代碼如下:
insert into xmlTable(doc)
select * from
openrowset(BULK 'C:\Documents and Settings\Administrator\桌面\1.xml',SINGLE_CLOB) as x
2.通過字符串插入
insert into xmlTable(doc) values('<dd><a>123</a></d>')
二。查詢
select doc.value('(/dd/a[@id>2])[1]','nvarchar(50)') as xm from xmlTable
select * from xmlTable where doc.value('(/dd/a[@id>2])[1]','nvarchar(50)') ='博客園'
三。更新
1.插入節點
update xmlTable set doc.modify('insert <a>123</a> into (/dd)[1]')
注:insert <要插入的節點> 插入到 <節點裡面>
into --插入裡面
after --插入節點後面
before --插入節點前面
2.刪除節點
update xmlTable
set doc.modify('delete (/dd/a)[1]') --刪除 /dd/a 的第一個節點
3.修改節點
update xmlTable
set doc.modify('replace value of (/dd/a/text())[1] with "博客園"')
暫時只學到這麼多,以後再寫。。。