Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已解决] 如何替换cdb_posts里的subject?

[复制链接]
pinkecity 发表于 2013-8-13 16:57:02 | 显示全部楼层 |阅读模式
本想替换帖子内容、标题的个别词,

第一条,修改标题执行没问题:   

UPDATE cdb_posts SETsubject=REPLACE(subject ,'博彩','菠菜');
第二条,替换帖子内容时,一念之差,忘记前面还有1个  subject 同时修改为message  所以,错误执行了:

UPDATE cdb_posts SET subject=REPLACE(message,'博彩','菠菜');  

导致,论坛所有的几万个贴子标题,变内容页了(如果是html的格式,标题就变代码了,如果是UBB就是UBB代码开头)如下截图:



自己研究尝试用这个代码,修复不成功
insert into cdb_posts(subject) select subject from cdb_threads;


我要:从cdb_threads表里复制subject替换到cdb_posts里的subject?


如何写该语句?

白乐天 发表于 2013-8-13 17:05:19 | 显示全部楼层
哈哈,你摊事儿了,你摊上大事儿了。{:soso_e112:}

UPDATE cdb_posts SET subject='' where first=0;
UPDATE cdb_posts p, cdb_threads t SET p.subject=t.subject where t.tid=p.tid and p.first=1;

吃一堑长一智,执行之前备份好数据。
回复

使用道具 举报

 楼主| pinkecity 发表于 2013-8-13 17:12:53 | 显示全部楼层
白乐天 发表于 2013-8-13 17:05
哈哈,你摊事儿了,你摊上大事儿了。

UPDATE cdb_posts SET subject='' where first=0;

真是吃一堑长一智 {:soso_e101:}

谢谢提醒,我先试试,一会给您汇报成果
回复

使用道具 举报

 楼主| pinkecity 发表于 2013-8-13 17:25:57 | 显示全部楼层
白乐天 发表于 2013-8-13 17:05
哈哈,你摊事儿了,你摊上大事儿了。

UPDATE cdb_posts SET subject='' where first=0;

感激涕零  谢谢兄弟~~~~
回复

使用道具 举报

 楼主| pinkecity 发表于 2013-8-13 17:26:27 | 显示全部楼层
白乐天 发表于 2013-8-13 17:05
哈哈,你摊事儿了,你摊上大事儿了。

UPDATE cdb_posts SET subject='' where first=0;

已经成功修复,人才啊
回复

使用道具 举报

让故事继续 发表于 2013-8-16 18:49:55 | 显示全部楼层
白乐天是DZ论坛为数不多的高手 人品又好。
回复

使用道具 举报

otherbank 发表于 2013-8-26 11:20:10 | 显示全部楼层
pinkecity 发表于 2013-8-13 17:26
已经成功修复,人才啊

对,操作之前一定先做好备份
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-6-24 03:48 , Processed in 0.124421 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表