我正在尝试使用T-SQL在xml类型列中找到并替换'this phrase'的所有实例和'that phrase'。
xml列包含超过8000个字符的字段。
我尝试使用Replace
函数,但它不喜欢XML数据类型,并且数据无法压缩到varchar中。
答案 0 :(得分:1)
无论大小如何,都可以放入varchar(max)
(2005年的新数据类型),它支持所有文本操作函数。
答案 1 :(得分:1)
我自己从未这样做过,但看起来this article应该有所帮助。看起来你会像以下那样做一个Update语句:
UPDATE [Table]
SET Document.Modify('[namespace declaration];
Replace Value Of [Xpath expression] with [New Value]')
但我肯定会仔细阅读那篇文章 - 只是略读它,我可能错过了一些东西。