实现 SQL Server 中的 XML

使用 xml 数据类型,可以将 XML 文档和片段存储在 SQL Server 数据库中。XML 片段是缺少单个顶级元素的 XML 实例。您可以创建 xml 类型的列和变量,并在其中存储 XML 实例。

可以选择性地将 XML 架构集合与 xml 数据类型的列、参数或变量进行关联。集合中的架构用于验证和类型化 XML 实例。在这种情况下,XML 是类型化的。

xml 数据类型和关联的方法有助于将 XML 集成到 SQL Server 的关系框架。有关详细信息,请参阅 XML 数据类型方法

xml 数据类型的限制

请注意以下适用于 xml 数据类型的一般限制:

  • xml 数据类型实例所占据的存储空间大小不能超过 2 GB。

  • 不能用作 sql_variant 实例的子类型。

  • 不支持转换或转换为 text 或 ntext。请改用 varchar(max) 或 nvarchar(max)。

  • 不能进行比较或排序。这意味着 xml 数据类型不能用在 GROUP BY 语句中。

  • 不能用作除 ISNULL、COALESCE 和 DATALENGTH 之外的任何内置标量函数的参数。

  • 不能用作索引中的键列。但可以作为数据包含在聚集索引中;如果创建了非聚集索引,也可以使用 INCLUDE 关键字显式添加到该非聚集索引中。

有关 xml 数据类型的更多具体限制,请参阅本节中的主题。

本节内容

主题

说明

XML 数据类型的变量和列

介绍如何创建、修改以及使用 xml 数据类型变量和列。

类型化的 XML 与非类型化的 XML 的比较

定义类型化和非类型化的 XML。介绍 XML 方案并说明如何注册 XML 架构集合。

生成 XML 实例

介绍用于生成 XML 实例的不同方法。

XML 数据类型方法

介绍 xml 数据类型方法。

设置选项(XML 数据类型)

介绍在查询 xml 数据类型列或变量时必须设置的选项。

使用 WITH XMLNAMESPACES 添加命名空间

介绍如何通过使用 WITH XMLNAMESPACES 子句来添加命名空间。

XML 数据修改语言 (XML DML)

介绍 XML 数据修改语言及其三个关键字。

XML 数据类型列的索引

介绍如何创建、修改以及使用主 XML 索引和辅助 XML 索引。

XML 数据的序列化

说明如何序列化 XML 数据并介绍 XML 字符的实体化。

在应用程序中使用 XML 数据类型

介绍在应用程序中使用 xml 数据类型时可用的选项。

AdventureWorks2008R2 数据库中的 xml 数据类型表示形式

介绍 AdventureWorks2008R2 数据库中的 xml 类型列。