我有一个XML列,其中包含我想要更新的特定节点。
我需要将此节点设置为 null 。
以下是我目前更新XML值的方法:
SET @XML.modify('replace value of (/House/Rooms/RoomSize/text())[1] with sql:variable("@NewRoomSize")');
此声明将产生<RoomSize> {Value} </RoomSize>
我应该如何设置这样的值结果:<RoomSize xsi:nil = "true" />
谢谢!
答案 0 :(得分:1)
找到解决方案:
将'xsi:nil'属性添加到相应的XML节点:
SET @XML.modify('insert attribute xsi:nil {"true"} into (/House/Rooms/RoomSize)[1]');
要删除当前节点中的值(如果存在):
SET @XML.modify('replace value of (/House/Rooms/RoomSize/text())[1] with ""');