sql server xml同时删除两个属性

时间:2012-06-19 14:56:29

标签: sql-server xml sqlxml

我发现以下内容显示了如何从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

但是我得到一个错误,即在更新期间不能多次修改同一列。有没有办法在一次声明中删除它们,或者我应该只运行两个单独的更新?

1 个答案:

答案 0 :(得分:3)

UPDATE TABLE SET
  xmlField.modify('delete (/clue_personal_auto/@*[local-name()=("attr1", "attr2")])')
 WHERE compare = 357

SE-Data