版权声明:_____________________不积跬步,无以至千里;不积小流,无以成江海。(转载若侵权,联系删除) https://blog.csdn.net/icecoola_/article/details/84024025
原执行sql: 在content列,修改test111111为testStr2222222
update t_table set content= replace(content,'test111111','testStr2222222')
修改后执行sql:
update t_table set content=
replace(convert(varchar(8000),content),'test111111','testStr2222222')
===================================================
对text或ntext类型的数据在查询中不能进行字符串操作。
这时用得最多的是把text当作varchar(实际内容长度低于8000字节时)或把ntext当作nvarchar(实际内容长度低于4000字节时)来处理.
update article set [Content]=
Replace(Cast([Content] as nvarchar(4000)),'oldkeyword','newkeyword');
update article set [Content]=
Replace(Cast([Content] as varchar(8000)),'oldkeyword','newkeyword’);
–
特别提醒:
在使用replace函数时,第一个参数一定不要加引号:
update t_table set src=replace('src','aaaa','bbbb');
他会将src字段全部替换为src字符串,这就是灾难性后果,所以前面提醒要备份。