|
内容。将 XML 列编入索引可以提高查询性能。
示例:保留 XML 数据的精确副本
假设政府法令要求您保留 XML 文档(例如,已签署的文档、法律文档或股票交易订单)的精确文本副本。您可能需要将您的文档存储在 [n]varchar(max) 列中。
对于查询,可在运行时将数据转换为 XML 数据类型,然后对其执行 Xquery。运行时转换可能代价高昂,尤其是在文档很大时。如果您经常进行查询,可以采用冗余方式将文档存储在 XML 数据类型列中并将其编入索引,同时从 [n]varchar(max) 列返回精确的文档副本。
XML 列可能是基于 [n]varchar(max) 列的计算列。您不能在 XML 计算列上创建 XML 索引,也不能在 [n]varchar(max) 或 varbinary(max) 列上生成 XML 索引。
XML 视图技术
通过在 XML 架构和数据库的表之间定义映射,可以创建持久性数据的"XML 视图"。可以使用 XML 批量负载来填充使用 XML 视图的基础表。您可以查询使用 XPath 1.0 的 XML 视图;该查询将被转换为针对表的 SQL 查询。与此类似,更新也会被传递到这些表。
在以下情况下,此技术很有用:
• 您希望拥有以 XML 为中心的编程模型,该模型使用现有关系数据上的 XML 视图。
• 您的 XML 数据具有架构 (XSD, XDR),它可能由外部合作伙伴提供。
• 数据的顺序不重要,或者您的可查询数据不是递归的,或者预先已经知道最大递归深度。
• 您希望通过使用 XPath 1.0 的 XML 视图来查询和修改数据。
• 您希望批量加载 XML 数据,并将其分解到使用 XML 视图的基础表中。
这方面的例子包括以 XML 形式公开以便用于数据交换和 Web 服务的关系数据,以及具有固定架构的 XML 数据。有关详细信息,请参阅 SQLXML 开发人员中心。
示例:使用带有批注的 XML 架构 (AXSD) 对数据进行建模
假设您现有一些希望以 XML 形式进行操作的关系数据(例如,客户、订单和行项目)。请使用 AXSD 在关系数据上定义 XML 视图。通过 XML 视图,可以将 XML 数据批量加载到表中,以及使用 XML 视图查询和更新关系数据。如果您需要在自己的 SQL 应用程序持续工作时与其 上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页 更多精彩:学习网->http://www.haohao888.com.cn 网络编程->http://www.51wlpc.com 电脑设备->http://www.xpmaster.cn
|