我发现以下内容显示了如何从SQL Server中的XML中删除属性:How to delete an attribute from an XML variable in sql server 2008?
但我想一次删除两个属性。我试过以下的东西:
UPDATE TABLE SET
xmlField.modify('delete (/clue_personal_auto/@attr1)[1]'),
xmlField.modify('delete (/clue_personal_auto/@attr2)[1]')
WHERE compare = 357
但是我得到一个错误,即在更新期间不能多次修改同一列。有没有办法在一次声明中删除它们,或者我应该只运行两个单独的更新?
答案 0 :(得分:3)
UPDATE TABLE SET
xmlField.modify('delete (/clue_personal_auto/@*[local-name()=("attr1", "attr2")])')
WHERE compare = 357