2012-06-19 79 views
2

刪除兩個屬性,我發現它展示瞭如何刪除XML屬性在SQL Server中的以下情況:How to delete an attribute from an XML variable in sql server 2008?SQL Server的XML同時

但我想立刻刪除兩個屬性。我嘗試了以下內容:

UPDATE TABLE SET 
    xmlField.modify('delete (/clue_personal_auto/@attr1)[1]'), 
    xmlField.modify('delete (/clue_personal_auto/@attr2)[1]') 
WHERE compare = 357 

但是我收到一個錯誤消息,指出在更新過程中同一列不能被修改多次。有沒有一種方法可以在一次性語句中刪除這兩個,或者我應該只運行兩個單獨的更新?

+0

您可以發佈您的XML? – praveen

+1

如果您發佈代碼,XML或數據示例,請**在文本編輯器中突出顯示這些行,然後單擊編輯器工具欄上的「代碼示例」按鈕(「{}」)以精確地格式化和語法突出顯示它! –

回答

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

SE-Data