在 SQL Server 中使用 xml 类型

本文介绍了SQL Server中XML数据类型的特性和使用方法,包括支持的XQuery查询、OPENROWSET增强、FORXML子句及OPENXML函数改进等内容,并详细列举了XML数据类型的限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对 XML 的支持已集成到 SQL Server 中的所有组件,包括:
支持 xml 数据类型
可以指定针对 xml 类型的列和变量中存储的 XML 数据的 XQuery 查询
增强了 OPENROWSET 以允许大容量加载 XML 数据。
增强了 SQL Server 2000 中引入的 FOR XML 子句和 OPENXML 函数。
XML数据类型方法。

方法名 描述

query  此方法用于对 XML 实例进行查询
  query ('XQuery')


A. 对 xml 类型的变量使用 query() 方法
B. 对 XML 类型列使用 query() 方法
select SContent.query('/Product/T5') from Product

value  此方法用于从 XML 实例检索 SQL 类型的值
value (XQuery, SQLType)

exists 此方法用于确定查询是否返回非空结果。
modify  此方法用于指定 XML DML 语句以执行更新
nodes  此方法用于将 XML 拆分成多行以将 XML 文档的组成部分传播到行集中

 XML数据类型的限制

  尽管在SQL Server 2005中XML数据类型就象许多其它数据类型一样对待,但是还存在一些如何使用它的具体限制。这些限制是:

  · XML类型不能转换成text或ntext数据类型。

  · 除了string类型,没有其它数据类型能够转换成XML。

  · XML列不能应用于GROUP BY语句中。

  · 分布式局部(partitioned)视图不能包含XML数据类型。

  · sql_variant实例的使用不能把XML作为一种子类型。

  · XML列不能成为主键或外键的一部分。

  · XML列不能指定为唯一的。

  · COLLATE子句不能被使用在XML列上。

  · XML列不能加入到规则中。

  · 唯一可应用于XML列的内置标量函数是ISNULL和COALESCE。没有任何其它内置标量函数支持使用XML类型。

  · 表中最多只能拥有32个XML列。

  · 具有XML列的表不能有一个超过15列的主键。

  · 具有XML列的表不能有一个timestamp数据类型作为它们的主键的一部分。

  · 存储在数据库中的XML仅支持128级的层次。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值