SQLServer2005 XML数据操作代码
程序员文章站
2023-02-22 11:34:19
示例: 创建table 复制代码 代码如下: create table [dbo].[xmltable]( [id] [int] identity(1,1) not nul...
示例:
创建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 "博客园"')
暂时只学到这么多,以后再写。。。
创建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 "博客园"')
暂时只学到这么多,以后再写。。。