手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >SQLServer XML数据的五种基本操作
SQLServer XML数据的五种基本操作
摘要:1.xml.exist输入为XQuery表达式,返回0,1或是Null。0表示不存在,1表示存在,Null表示输入为空2.xml.value...

1.xml.exist

输入为XQuery表达式,返回0,1或是Null。0表示不存在,1表示存在,Null表示输入为空

2.xml.value

输入为XQuery表达式,返回一个SQL Server标量值

3.xml.query

输入为XQuery表达式,返回一个SQL Server XML类型流

4.xml.nodes

输入为XQuery表达式,返回一个XML格式文档的一列行集

5.xml.modify

使用XQuery表达式对XML的节点进行insert , update 和 delete 操作。

下面通过例子对上面的五种操作进行说明:

declare @XMLVar xml = '

<catalog>

<book category="ITPro">

<title>Windows Step By Step</title>

<author>Bill Zack</author>

<price>49.99</price>

</book>

<book category="Developer">

<title>Developing ADO .NET</title>

<author>Andrew Brust</author>

<price>39.93</price>

</book>

<book category="ITPro">

<title>Windows Cluster Server</title>

<author>Stephen Forte</author>

<price>59.99</price>

</book>

</catalog>'

1. xml.exist

select @XMLVar.exist('/catalog/book')-----返回1

select @XMLVar.exist('/catalog/book/@category')-----返回1

select @XMLVar.exist('/catalog/book1')-----返回0

set @XMLVar = null

select @XMLVar.exist('/catalog/book')-----返回null

2.xml.value

select @XMLVar.value('/catalog[1]/book[1]','varchar(MAX)')

select @XMLVar.value('/catalog[1]/book[2]/@category','varchar(MAX)')

select @XMLVar.value('/catalog[2]/book[1]','varchar(MAX)')

结果集为:

Windows Step By StepBill Zack49.99 Developer NULL

3.xml.query

select @XMLVar.query('/catalog[1]/book')

select @XMLVar.query('/catalog[1]/book[1]')

select @XMLVar.query('/catalog[1]/book[2]/author')

结果集分别为:

<book category="ITPro">

<title>Windows Step By Step</title>

<author>Bill Zack</author>

<price>49.99</price>

</book>

<book category="Developer">

<title>Developing ADO .NET</title>

<author>Andrew Brust</author>

<price>39.93</price>

</book>

<book category="ITPro">

<title>Windows Cluster Server</title>

<author>Stephen Forte</author>

<price>59.99</price>

</book>

<book category="ITPro">

<title>Windows Step By Step</title>

<author>Bill Zack</author>

<price>49.99</price>

</book>

<author>Andrew Brust</author>

4.xml.nodes

select T.c.query('.') as result from @XMLVar.nodes('/catalog/book') as T(c)

select T.c.query('title') as result from @XMLVar.nodes('/catalog/book') as T(c)

结果集分别为:

<book category="ITPro"><title>Windows Step By Step</title><author>Bill …………

<book category="Developer"><title>Developing ADO .NET</title><author>Andrew …………

<book category="ITPro"><title>Windows Cluster Server</title><author>Stephen …………

<title>Windows Step By Step</title>

<title>Developing ADO .NET</title>

<title>Windows Cluster Server</title>

5.xml.modify

关于modify内容,请参见下一篇文章。

【SQLServer XML数据的五种基本操作】相关文章:

SQL Server全文索引服务

SQL Server 连接到服务器 错误233的解决办法

SQL Server 2008 数据库中创建只读用户的方法

SQL Server 2005 数据库复制详细介绍

Eclipse 连接 SQL Server 2012数据库

SQL Server 2005支持的两条新语法

SQLite数据库

SQL Server 临时表的删除

SQL语句的基本语法

使用SQL Server数据库嵌套子查询的方法

精品推荐
分类导航