WEB开发网
开发学院数据库MSSQL Server Microsoft SQL Server 2005 的 XML 最佳实施策略 阅读

Microsoft SQL Server 2005 的 XML 最佳实施策略

 2007-05-17 09:38:17 来源:WEB开发网   
核心提示: XML 列可能是基于 [n]varchar(max) 列的计算列,您不能在 XML 计算列上创建 XML 索引,Microsoft SQL Server 2005 的 XML 最佳实施策略(6),也不能在 [n]varchar(max) 或 varbinary(max) 列上生成 XML

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 数据。

示例:使用带有批注的 XML 架构 (AXSD) 对数据进行建模

假设您现有一些希望以 XML 形式进行操作的关系数据(例如,客户、订单和行项目)。请使用 AXSD 在关系数据上定义 XML 视图。通过 XML 视图,可以将 XML 数据批量加载到表中,以及使用 XML 视图查询和更新关系数据。如果您需要在自己的 SQL 应用程序持续工作时与其他应用程序中的 XML 标记交换数据,则该模式很有用。

混合模型

很多时候,适合将关系数据和 XML 数据类型列结合起来进行数据建模。可以将 XML 数据中的某些值存储在关系列中,而将其余或全部 XML 值存储在 XML 列中。这可能会产生更好的性能(例如,可以完全控制在关系列上创建的索引)和锁定特性。然而,这需要您承担更多的责任来管理数据存储。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Microsoft SQL Server

编辑录入:coldstar [复制链接] [打 印]
赞助商链接