SQL Server 2008:修改xml,使用值的值替换属性值

时间:2010-07-28 10:39:52

标签: xml sql-server-2008

我有一张桌子:

declare @Table table (XmlPart xml, Cnt int)

XmlPart具有以下形式:

<Group count="0" />

我想通过用Cnt列的值替换它来修改XmlPart。这就是我的尝试:

update @Table
set XmlPart.modify('replace value of (/Group/@count)[1] with sql:column(Cnt)')

但解析器不理解我..

是否可以用表格列替换xml的属性(或节点值)?

1 个答案:

答案 0 :(得分:6)

你几乎做对了: - )

update @Table
set XmlPart.modify('replace value of (/Group/@count)[1] with sql:column("Cnt")')

您需要将sql:column中的列名称放入双引号...

请参阅MSDN Docs on sql:column XQuery function