现在Insus.NET来演示http://www.cnblogs.com/insus/archive/2012/02/24/2367323.html列表中最后一个函数xml.modify()。参考下表,xml.modify()函数有三个方法:
函数方法 | 说明 |
xml.modify(insert) |
在使用的XML数据类型实例插入一个节点或节点的顺序。 |
xml.modify(delete) | 删除指定的XQuery表达式的结果输出序列的零个或多个节点。 |
xml.modify(replace) | 修改一个节点的值。 |
首先来演示xml.modify(insert) ,为xml变量值插入一个元素<language name="PHP" />:
DECLARE @xml XML = '
<Languages>
<language name="VB.NET"/>
<language name="C#"/>
<language name="Java" />
</Languages>
'
SET @xml.modify('insert
<language name="PHP" />
into (/Languages)[1]'
)
SELECT @xml
<Languages>
<language name="VB.NET"/>
<language name="C#"/>
<language name="Java" />
</Languages>
'
SET @xml.modify('insert
<language name="PHP" />
into (/Languages)[1]'
)
SELECT @xml
执行结果:
接下来演示xml.modify(delete)函数方法,把元素<language name="Java" />删除:
SET @xml.modify('delete
/Languages/language[3]
'
)
/Languages/language[3]
'
)
执行结果:
最后一个演示是xml.modify(replace),把第一个元素language的name值改为"J#":
SET @xml.modify('replace value of
/Languages[1]/language[1]/@name
with "J#"'
)
/Languages[1]/language[1]/@name
with "J#"'
)
执行得到的结果: