IsaacZ 发表于 2011-5-15 03:27:12

【待完善】批量移动某个主题分类下的帖子到指定版块的方法【附SQL代码】

网友投票认为点拨论坛“光盘刻录论坛”版块下面的下载帖子应该独立成一个版块,于是今天新开了一个“媒体软件下载”下级版块。不过要把几百个帖子移动到新版块的话,需要每个帖子点一下,难道没有什么简便方法了?心有不甘呀!

去Discuz官网搜索了一下,得到一串SQL代码,稍微修改了一下,达到了我的要求。下面与站长朋友分享一下:

UPDATE cdb_threads SET fid=116 where fid=48 and typeid=9;
讲解:此段代码的意思是:更新 cdb_threads 数据库,将版块ID为 48 且分类ID为 9 的帖子的版块ID由 原来的 48 更改为 116。版块ID换了,就相当于帖子所在的版块换了。

用这串代码升级数据库后,新版块还是显示为空,于是进入后台——更新论坛统计——重建论坛帖数,然后再刷新一遍,看到新版块里面已经坐满了原来的下载类帖子。
郑重声明!以上方法有问题!请不要使用!会导致移动后的帖子无法编辑!原因是只修改了cdb_threads 数据库,没修改 cdb_posts 数据库,所以帖子内容本身的 fid 段还没有修改为新的。 如果有解决方案,会在以后提供。

IsaacZ 发表于 2011-6-5 08:42:45

回复 2# 147ym

请勿使用这种方法!!!

会导致移动后的帖子无法编辑!

147ym 发表于 2011-6-5 06:17:21

学习了,谢谢楼主分享

147ym 发表于 2011-6-5 09:46:37

回复 3# IsaacZ


    谢谢IsaacZ提示
页: [1]
查看完整版本: 【待完善】批量移动某个主题分类下的帖子到指定版块的方法【附SQL代码】