文章内容

2017/12/26 10:05:24,作 者: 黄兵

Sqlserver替换函数Replace

Sqlserver中Replace函数:实现字段中某个字符串批量替换。

注意:强烈建议替换前备份数据库以免发生灾难性后果。

update article set [Content]=replace([content],'www.abc.com','www.bbb.com');

说明:将content字段中的 www.abc.com  替换===> www.bbb.com

如果content字段类型为text,会报错:参数数据类型 text 对于 replace 函数的参数 1 无效。

对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 focusimg set src=replace('src','www.abc.com','www.bbb.com');

他会将src字段全部替换为src字符串,这就是灾难性后果,所以前面提醒要备份

本文转载自:博客园 - 思如雨 - Sqlserver替换函数Replace

分享到:

发表评论

评论列表