您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 在SQLSERVER中批量替换字符串的方法
SELECT*FROM[antai].[dbo].[article]wheredescriptionlike'%baidu.com%'update[antai].[dbo].[article]setcontent=replace(cast(contentasvarchar(8000)),'=default&controller=webim&action=index&siteid=2522387','=LZA45447545&cid=1364287052328357966261')wherecontentlike'%=default&controller=webim&action=index&siteid=2522387%'方法一:(这种是最常用的,因为很多大段的内容都使用textntext等数据类型,而我们通常也是替换里面的内容)varchar和nvarchar类型是支持replace,所以如果你的text不超过8000可以先转换成前面两种类型再使用replace替换textntext数据类型字段的语句复制代码代码如下:update表名set字段名=replace(cast(与前面一样的字段名asvarchar(8000)),'原本内容','想要替换成什么')方法二:(替换其他数据类型字段的语句,实际应用中不常见)复制代码代码如下:update[表名]set字段名=replace(与前面一样的字段名,'原本内容','想要替换成什么')以下是补充:1。如何批量替换ntext字段里面的数据问题描述:我想把数据库中News表中的字段content中的一些字符批量替换。我的content字段是ntext类型的。我想替换的字段是content字段,我想把里面的,替换方法是:updateNewssetcontent=replace(cast(contentasvarchar(8000)),'://)2。如何批量替换varchar和nvarchar类型varchar和nvarchar类型是支持replace,所以如果你的text/ntext不超过8000/4000可以先转换成前面两种类型再使用replace。update表名settext类型字段名=replace(convert(varchar(8000),text类型字段名),'要替换的字符','替换成的值')update表名setntext类型字段名=replace(convert(nvarchar(4000),ntext类型字段名),'要替换的字符','替换成的值')不过上面的方法,对于text或ntext字段超过8000的时候就不能用了,一般可以用asp程序来实现,先读取内容替换后,保存到数据库中。临时解决方法:就是在生成静态的时间,可以先替换再输出,这里有个貌似不错的解决方法了,大家可以看下一篇文件啊。
本文标题:在SQLSERVER中批量替换字符串的方法
链接地址:https://www.777doc.com/doc-2561507 .html