WEB开发网
开发学院数据库MSSQL Server Microsoft SQL Server 2005 中的 XML 支持(2) 阅读

Microsoft SQL Server 2005 中的 XML 支持(2)

 2007-05-13 09:26:32 来源:WEB开发网   
核心提示:XML 数据修改SQL Server 2005 提供了用于数据修改的构造作为对 XQuery 的一个扩展,子树可以在指定的节点之前或之后插入,Microsoft SQL Server 2005 中的 XML 支持(2),或者作为最左边或最右边的子节点插入,此外,对于因类型不匹配而导致的静态错误,显式转换到正确的类型是一

XML 数据修改

SQL Server 2005 提供了用于数据修改的构造作为对 XQuery 的一个扩展。子树可以在指定的节点之前或之后插入,或者作为最左边或最右边的子节点插入。此外,子树也可以插入到父节点,在这种情况下,它成为父节点最右边的子节点。属性、元素和文本节点插入都支持。

支持删除子树。在这种情况下,整个子树就从 XML 实例中被移除。

标量值可以用新的标量值进行替换。

例:将子树插入 XML 实例

这个示例显示了 modify() 方法的使用,它将一个新的<section> 元素插入编号为 1 的 元素的右边。

UPDATE docs SET xCol.modify('
 insert
  <section num="2">
     <heading>Background</heading>
</section>        
 after (/doc/section[@num=1])[1]')

例:将这本书的价格更新为 $49.99

下面的更新语句将 ISBN 为 1-8610-0311-0 的书的<price> 替换为 $49.99。该 XML 实例是通过 XML 架构 http://myBooksinstance 进行类型化的,因而就有了 XML 数据修改语句中的命名空间声明。

UPDATE XmlCatalog
SET  Document.modify ('
  default namespace = "http://myBooks"
  replace value of (/bookstore/book[@ISBN=
"1-8610-0311-0"]/price)[1] with 49.99')
类型检查和静态错误

XQuery 引入了类型检查。编译阶段检查 XQuery 表达式和数据修改语句的静态类型正确性,并且将 XML 架构用于类型推理(在类型化 XML 的情况下)。如果表达式在运行时由于类型安全冲突而失败,则会产生静态类型错误。静态错误的例子有:将一个字符串与一个整数相加、在操作需要单值的地方接收一个值序列,以及查询不存在的节点来查找类型化数据。对于因类型不匹配而导致的静态错误,显式转换到正确的类型是一种变通方法。XQuery 运行时错误被转换成空序列。

1 2 3 4 5 6  下一页

Tags:Microsoft SQL Server

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