2

在 SQL Server 2005 中运行 XQuery 时,我希望有一些默认可用的命名空间,这可能吗?

例如,我想做以下事情:

select * from TableWithXML
where
FieldWithXML.exist(
declare namespace nsp="http://www.example.com/exampleNamespace";
nsp:root/nsp:childnode) = 1

不必每次都重新声明命名空间,这样 SQL 就可以识别 nsp 而无需我每次都包括序言。

想法?

4

1 回答 1

1

xmlxsi命名空间是您不必自己声明的唯一预定义命名空间。所有其他命名空间必须在每个查询中显式声明。

有两种声明命名空间的方法:

  1. 通过declareXQuery 中的语句。
  2. 通过 TSQL 语句上的 WITH XMLNAMESPACES 子句。
于 2009-10-22T19:53:12.243 回答