SQL Server 2005中XML操作函数详解_XHTML/WEB_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

SQL Server 2005中XML操作函数详解

作者:黑客防线网安XML教程基地 来源:黑客防线网安XML教程基地 浏览次数:0

本篇关键词:函数详解操作'
黑客防线网安网讯:  首先要明确一个基本原则,XML类型的数据之间以及XML类型与其它数据类型之间都是不能比较的,也就是说XML类型的数据不能出现在等号的任何一边。  大致可分为查询类,修改类和跨域查询类...

  首先要明确一个基本原则XML类型的数据之间以及XML类型与其它数据类型之间都是不能比较的也就是说XML类型的数据不能出现在等号的任何一边

  大致可分为查询类,修改类和跨域查询类

  查询类包含query(),value(),exist()和nodes().

  修改类包含modify().

  跨域查询类包含sql:variable()和sql:column().

  查询类

  1. query()方法:返回满足条件的所有XML行。只能用于SELECT子句当中。

  2. value()方法:返回从XML节点中提取的标量值。必须在value()方法的第二个参数中指定所返回的标量的数据类型,所以value()方法可以与其它标量进行比较。可用于SELECT子句和WHERE子句。

  3. exist()方法:返回int型标量的0或者1。对每行的XML数据类型进行存在性检查。可用于SELECT子句和WHERE子句。

  4. nodes()方法:返回只有一个栏位的table,且该table的栏位是XML数据类型。所以nodes()方法只能出现在FROM子句中。

  示例:

  1.query()

SELECT pk, xCol.query('/doc[@id = 123]//section')
FROM docs

  2.value()

SELECT xCol.value('data((/doc//section[@num = 3]/heading)[1])', 'nvarchar(max)')
FROM docs

  3.exist()

SELECT xCol.query('/doc[@id = 123]//section')
FROM   docs
WHERE  xCol.exist ('/doc[@id = 123]') = 1

  4.nodes()

SELECT nref.value('@genre', 'varchar(max)') LastName
FROM   docs CROSS APPLY xCol.nodes('//book') AS R(nref)

  修改类

  modify()方法:允许修改XML实例的某些部分,例如添加或删除子树,或者更新标量值(如将书的价格从9.99替换为39.99)。

  无返回值,只能用于SET子句中。

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-16137-1.html
网站维护教程更新时间:2012-04-06 01:08:31  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer