2009-10-21 96 views
2

我想在SQL Server 2005中運行XQuery時默認有幾個可用的命名空間,這可能嗎?SQL Server XML聲明命名空間

例如,我想做到以下幾點:

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

無需每次重新聲明命名空間,以便SQL將NSP承認沒有我,包括序言各一次。

想法?

回答

1

xmlxsi命名空間是您不必聲明自己的唯一預定義命名空間。所有其他名稱空間必須在每個查詢中明確聲明。

有兩種方法來聲明命名空間:通過XQuery的內部declare聲明

  1. 通過TSQL語句中的WITH XMLNAMESPACES子句。