希望这不是一个问题太愚蠢。我一直试图找到答案。
假设我有一个这样的表:
MyTable
:
Name NVARCHAR(25)
Data XML
如何选择整个列值作为XML?
declare @XmlVar xml = (select top 1 Data from MyTable)
以后似乎不允许操纵该xml。
declare @XmlVar xml = (select top 1 Data from MyTable FOR XML AUTO)
似乎附加其他节点(<MyTable><Data>...
)
答案 0 :(得分:1)
事实证明我没有指定所需的命名空间,因此Modify语句不起作用。
所以:
declare @XmlVar xml = (select top 1 Data from MyTable)
工作正常。
@XmlVar.modify('declare default element namespace "MyNameSpaceUrl";
delete /RootNode[1]')
当我在MyTable.Data中指定默认元素名称空间时,可以正常工作。
希望将来某个时候可以节省其他人。