【原创】sql2005实现字段里某内容替换成其他内容的例子
思良:郁闷!服务器硬盘坏了,网站文件全部丢失,好在数据库是备份到网络上的(过段时间再写一篇关于网络备份数据库和文件的文章),文章是可以还原回来,不过文章的图片都丢失了,访问起来全部是叉叉,如果一篇一篇的进去编辑文章,几年的文章不知道要多少时间,最简单的方法,用SQL语句去数据库修改代码,把所以的图片代码全部屏蔽,这样访问起来就看不到没图片的叉叉了。
文章表是 j_module_article,其中Content字段是文章内容代码,ID是文章ID,网站文件有备份,不过是去年的文件,所以早期文章是有图片的,这样只能用ID判断哪些文章要修改,图片代码是<img .... .jpg> ,如果他们之间加入<!-- -->注释代码就可以屏蔽图片,<img .... .jpg>之间的内容是不同的,所以要用2条语句分别替换,如果有些文章有2张图片,会有加2个<br>代码,这个代码是多余的,也有替换成空内容,这样就要写3条语句,下面的语句就是把Content字段里某内容替换成其他内容。
(把<br><br>替换为空,把.jpg">替换成.jpg"> --> ,把<IMG替换<!-- <IMG)
UPDATE j_module_article
SET [Content] = replace([Content], '<br><br>', '')
WHERE (Id > 11366);
UPDATE j_module_article
SET [Content] = replace([Content], '.jpg">', '.jpg"> -->')
WHERE (Id > 11366);
UPDATE j_module_article
SET [Content] = replace([Content], '<IMG ', '<!-- <IMG')
WHERE (Id > 11366);
运行通过,原来写过一篇关于mysql的语句,在sql2005下不能用,所以才写这篇。
update table set ad_price=replace(ad_price,'$','¥'); (sql语句)
UPDATE `dtcms_product` SET `productname`=replace(`productname`,'牛仔','我爱你'); (mysql语句)