我在名为“CONTENT_HTML”表中的XML列在其中的数据会看起来像:如何修改SQL Server中的XML节点
<root>
<Category>Cover Impression</Category>
<Title>Mystery of the Wolves</Title>
<Month>April</Month>
...
...
</root>
我想从封面印象<Category>
下更换元以封面印象,而更换后,我用这一类的表应该像
<Category>Cover Impressions</Category>
我查了这篇文章(http://stackoverflow.com/questions/7316712/how-to-rename-xml-node -name-in-a-sql-server)为我的问题,但不完全是我正在寻找。
有人能指出我正确的方向吗?
后建议楼下我想这:
declare @newValue XML
select @newValue = 'Cover Impressions'
update dbo.content
set content_html.modify('replace value of (/root/Category/text())[1] with sql:variable("@newValue")')
但给我“不能调用NTEXT方法”错误 谢谢,
好咄 - 如果你列的类型是'NTEXT'的,当然XML功能将无法正常工作!我只是假设它是一个XML列(因为你说过这样!**)首先:**不再使用NTEXT ** - 它已被弃用 - 如果有的话,使用'nvarchar(max)',if它是一个包含XML的列 - ** USE **'XML' ... –