扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:IT专家网 戴羽 来源:天新网 2008年3月25日
关键字: 数据库 Mssql SQL SQL Server
2.2 SQL Server 2005中的XML功能
在SQL Server 2005中,FOR XML 功能得到了增强,它有了对根元素和元素名称的新的选项、使用FOR XML 调用以便你可以建立复杂的层次关系的能力、和一个新的使得你可以定义将要使用XPath 语法来提取的XML结构的PATH 模式,如下面的示例所示:
SELECT ProductID AS '@ProductID', ProductName AS 'ProductName' FROM Products FOR XML PATH ('Product'), ROOT ('Products') |
这个查询返回下面的XML:
<Products> <Product ProductID="1"> <ProductName>Widget</ProductName> </Product> <Product ProductID="2"> <ProductName>Sprocket</ProductName> </Product> </Products> |
除了增强SQL Server 2000已推出的XML功能,SQL Server 2005增加了一个新的、本地的xml 数据类型,使得你可以为XML数据创建变量和列,如下面的示例所示:
CREATE XML SCHEMA COLLECTION ProductSchema AS '<?xml version="1.0" encoding="UTF-16"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- schema declarations go here --> </xs:schema>' |
你可以使用xml 数据类型来存储数据库中的文档或数据。列和变量可以用于非类型化的XML或类型化的XML,后者是对一个XML Schema 定义(XML Schema Definition ,XSD)的schema有效。如果要为数据验证进行定义,开发人员可以使用CREATE XML SCHEMA COLLECTION 语句,如下面的示例所示:
在创建了一个schema 集合后,你可以通过参照schema集合将一个xml变量或列与它所包含的schema 声明结合起来,如下面的示例所示:
CREATE TABLE SalesOrders (OrderID integer PRIMARY KEY, OrderDate datetime, CustomerID integer, OrderNotes xml) |
类型化XML在插入值或更新值时对关联的schema 集合的声明进行验证,这使得可以为了遵从性检查或兼容性原因而加强关于XML数据的结构的业务规则。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。