Transact-SQL 支持用于查询 xml 数据类型的 XQuery 语言的子集。此 XQuery 实现符合 2004 年 7 月的 XQuery 工作草案。该语言正在由 World Wide Web 联合会 (W3C) 开发,所有主要数据库供应商和 Microsoft 也参与此开发。由于 W3C 规范在成为 W3C 建议之前还可能进行修订,因此此实现可能与最终的建议有所不同。本主题概要介绍了 SQL Server 2005 中所支持的 XQuery 子集的语义和语法。

有关详细信息,请参阅 W3C XQuery 1.0 语言规范。

XQuery 是一种可以查询结构化或半结构化 XML 数据的语言。由于 SQL Server 2005 Database Engine 中提供 xml 数据类型支持,因此可以将文档存储在数据库中,然后使用 XQuery 进行查询。

XQuery 基于现有的 XPath 查询语言,并支持更好的迭代、更好的排序结果以及构造必需的 XML 的功能。XQuery 在 XQuery 数据模型上运行。此模型是 XML 文档以及可能为类型化也可能为非类型化的 XQuery 结果的抽象概念。类型信息基于 W3C XML 架构语言所提供的类型。如果没有可用的类型化信息,XQuery 将按照非类型化处理数据。这与 XPath 1.0 版处理 XML 的方式相似。

若要查询 xml 类型的变量或列中存储的 XML 实例,可以使用 xml 数据类型方法。例如,可以声明一个 xml 类型的变量,然后使用 xml 数据类型的 query() 方法来查询此变量。

DECLARE @x xmlSET @x = '<ROOT><a>111</a></ROOT>'SELECT @x.query('/ROOT/a')

在下面的示例中,查询是针对 AdventureWorks 数据库中 ProductModel 表的 xml 类型的 Instructions 列指定的。

SELECT Instructions.query('declare namespace AWMI="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions";/AWMI:root/AWMI:Location[@LocationID=10]') as ResultFROM  Production.ProductModelWHERE ProductModelID=7

XQuery 包含命名空间声明(declare namespace AWMI=...)和查询表达式(/AWMI:root/AWMI:Location[@LocationID=10])。

请注意,XQuery 是针对 xml 类型的 Instructions 列指定的。XML 数据类型的 query() 方法(XML 数据类型)用于指定 XQuery。

转载于:https://www.cnblogs.com/enuosky/archive/2006/08/16/478454.html

针对 xml 数据类型的 XQuery (摘自SQL Server 2005 联机丛书)相关推荐

  1. 为 Analysis Services 数据库使用扩展字段属性(SQL Server 2005 联机丛书(2008 年 11 月))...

    SQL Server Analysis Services 数据处理扩展插件支持扩展字段属性.扩展字段属性是除字段属性 Value 和 IsMissing 之外的属性,可用于数据源并受数据处理扩展插件支 ...

  2. SQL Server 2012 联机丛书

    最近在自学数据库,学习的过程中需要用到联机丛书,现就联机丛书的下载和安装进行一下记录. 1.SQL Server 2008联机丛书下载与安装 转:https://blog.csdn.net/yyp03 ...

  3. 胡百敬老师谈SQL Server 2005

    博文专访--与作者面对面 胡百敬老师谈SQL Server 2005 针对胡百敬老师的新书<SQL Server 2005数据库开发详解>的出版,博文视点对胡百敬老师进行了专访,以飨读者. ...

  4. 轻松掌握使用 SQL Server 浏览器,解决SQL Server 2005跨网段不能连接问题

    SQL Server Browser  作为 Windows 服务在服务器上运行.SQL Server Browser 侦听对 SQL Server 资源的传入请求,并提供计算机上安装的 SQL Se ...

  5. SQL SERVER 2005 进行XML查询

    1. CREATE TABLE Team ( TeamID int identity not null, TeamDoc xml DEFAULT '<Team />' NOT NULL ) ...

  6. SQL Server 2005:你应该知道的13件事情

    距离微软的SQL Server 2005正式版的推出,已经将近一年的时间.随着最近两份研究报告的出炉,SQL Server 2005又引起了业界的关注和评论--微软凭借SQL Server 2005取 ...

  7. SQL Server 2005:面向信息管理的全新平台

    SQL Server 2005:面向信息管理的全新平台 面向各类角色的信息平台 笔者一直认为自SQL Server 7.0以后称SQL Server应该更多的被称为是数据平台而不是数据库产品,但是到了 ...

  8. sql server 2005

    SQL Server 是一个关系数据库管理系统.它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本.在Windows NT ...

  9. SQL SERVER 2005 T_SQL新的特性以及解决并发

    一.修改语句的增强 UPDATE test SET tname.WRITE('one hundred and two', 9, 3) WHERE tid = 102 在2005中增强了update方法 ...

  10. SQL Server 2000 联机丛书可用性评估报告

    SQL Server 2000 联机丛书 可用性评估报告 测试单位:欧盟可用性中国支持中心 测试日期:2004年5月26日– 7月26日 报告制作:欧盟可用性中国中心白文涛 报告制作日期:2004年7 ...

最新文章

  1. 爱奇艺大数据分析平台的演进之路
  2. java怎么写算法_关于读写锁算法的Java实现及思考
  3. 使用awk用一个列替换另一个文件中的列?
  4. PCB走线角度为90度到底行不行?
  5. VMware12.0下安装CentOS-6.9-x86_64-bin-DVD.iso
  6. html前台检验特殊字符正则,【Qt编程】html特殊字符及正则表达式
  7. 交?叉?验?证?(?分?类?器?性?能?)
  8. 从编程小白到数据科学家,我只用了 6 个月的时间
  9. TX2 摄像头CSI(一)
  10. camera主观测试_镜头测试:日本富士EBC 135/2.5+索尼A7微单实拍北京北海公园
  11. 【翻译】Xv6 book Chapter 4:Traps and system call
  12. MPU6050+一阶互补滤波
  13. php开源代码推荐,非常好用的源代码网站推荐,用这些开源代码就够了
  14. 输油管的布置数学建模matlab,输油管布置的数学模型
  15. 教你如何购买阿里云香港服务器(教程)
  16. 悲剧收场的梅耶尔给雅虎留下了哪些“遗产”?
  17. Google 101 Tips
  18. 程序员很少上《非诚勿扰》电视节目相亲之分析
  19. StarUML for Mac(UML软件建模器)
  20. transform(转换)

热门文章

  1. 如何使用Movavi Video Editor制作幻灯片?
  2. mac启动盘已满,如何“瘦身”
  3. egg(18)--Mongodb4.x介绍以及Mongodb账户权限配置
  4. linux系统工程师修改打开文件数限制代码教程。服务器运维技术
  5. Linux与FreeBSD的多网卡绑定增加服务器流量
  6. iOS 几个时间类型
  7. 拜托!你真会用线程池吗?
  8. 面试过程中,竟然遇到PUA,我不得不服这种“潜规则”~
  9. Java8中的 Stream 那么彪悍,你知道它的原理是什么吗?
  10. SpringBoot 整合SpringSecurity示例实现前后分离权限注解+JWT登录认证