说到数据库中文本的替换,一般人首先想到的是Replace函数:
update Table set Column=Replace(Column,’oldkeyword’,'newkeyword’)
不过,当Column为text或ntext时,用以上的查询就会报错“参数数据类型 text 对于 replace 函数的参数 1 无效”。原来问题是出在对text或ntext类型的数据在查询中不能进行字符串操作。这时用得最多的便是把text当作varchar(实际内容长度低于8000字节时)或把ntext当作nvarchar(实际内容长度低于4000字节时)来处理了:
update Table set Column=Replace(Cast(Column as varchar(8000)),’oldkeyword’,'newkeyword’)
update Table set Column=Replace(Cast(Column as nvarchar(4000)),’oldkeyword’,'newkeyword’)