2
是有可能從數據庫查詢裏面搭配XML命名空間子句
獲得的FOR XML子句 結果XML命名空間的一些數據,例如
WITH XMLNAMESPACES ('uri1' as ns1,
'uri2' as ns2,
DEFAULT 'uri2')
SELECT ProductID,
Name,
Color
FROM Production.Product
WHERE ProductID=316 or ProductID=317
FOR XML RAW ('ns1:Product'), ROOT('ns2:root'), ELEMENTS
結果:
<ns2:root xmlns="uri2" xmlns:ns2="uri2" xmlns:ns1="uri1">
<ns1:Product>
<ProductID>316</ProductID>
<Name>Blade</Name>
</ns1:Product>
<ns1:Product>
<ProductID>317</ProductID>
<Name>LL Crankarm</Name>
<Color>Black</Color>
</ns1:Product>
</ns2:root>
如果我想獲得的值從數據庫裏面?
是這樣的:
WITH XMLNAMESPACES ('uri1' as ns1,
**(SELECT namespace from tableName)** as ns2,
DEFAULT 'uri2')
你不能這樣做 - 'WITH XMLNAMESPACES(....)'子句中的值必須是字符串文字。 –
我看到了,所以它會被硬編碼,謝謝@marc_s – Mido
是的 - 它似乎甚至不能使用SQL變量,所以是的,你必須硬編碼這些命名空間 –