本帖最后由 cr180 于 2011-4-18 19:50 编辑
今天一位朋友需要将论坛里面所有主题的回复内容全部删除,但是不能删除群组的,觉得这个sql可能有用,先记录下来分享给需要的童鞋吧,此贴非常给力值得收藏!集合很多的批量操作和因批量误操作的挽救措施!
欢迎各位童鞋发现问题及时回帖,以免错误的地方误导大家
注意注意:以下sql语句虽然经过了测试,但是也不排除其他因素,所以还是记得要作好数据备份,错了好恢复
删除除群组外论坛版块内所有的回复内容(包括投票、悬赏、商品等等的特殊主题):
- DELETE a FROM pre_forum_post a ,pre_forum_forum b WHERE a.first='0' AND a.fid=b.fid AND b.status=1
复制代码
删除指定版块内所有的回复内容(包括投票、悬赏、商品等等的特殊主题):
- DELETE FROM pre_forum_post WHERE first='0' AND fid=123
复制代码 语句当中的123改为自己的版块id
如果要指定删除多个版块的(包括投票、悬赏、商品等等的特殊主题):
- DELETE FROM pre_forum_post WHERE first='0' AND fid IN (1,2,3,4)
复制代码 1,2,3,4即版块ID一个逗号一个最后不能加逗号!!!
删除除群组内所有的回复内容(包括投票、悬赏、商品等等的特殊主题):- DELETE a FROM pre_forum_post a ,pre_forum_forum b WHERE a.first='0' AND a.fid=b.fid AND b.status=3
复制代码
删除指定用户在指定版块里面的回复(很多站长需要的)
- DELETE FROM pre_forum_post WHERE first='0' AND fid=123 AND authorid=xxx
复制代码 123为版块ID ,xxx为用户的uid
将指定用户在指定版块里面的主题更新为删除状态(只是更新为删除状态并非直接删除数据库的数据)
- UPDATE pre_forum_thread SET displayorder = '-1' WHERE fid=123 AND authorid=xxx
复制代码 123为版块ID ,xxx为用户的uid
将指定用户在指定版块里面的主题更新为正常状态(解决因为批量误删的挽救)
- UPDATE pre_forum_thread SET displayorder = '0' WHERE fid=123 AND authorid=xxx
复制代码 123为版块ID ,xxx为用户的uid
将禁止访问用户组的帖子全部更新为删除状态(甩回收站里)
帖子标题全是发贴机/垃圾广告,虽然禁止了用户组不显示内容,但是能看标题。给出一个sql语句将这些禁止的用户组主题全部甩回收站,让他连AD标题的份都没!以cr180的名义干掉这些个垃圾!!
- UPDATE pre_forum_thread a ,pre_common_member b SET a.displayorder = '-1' WHERE a.authorid=b.uid AND b.groupid=5
复制代码 groupid=4 禁止发言组 groupid=5 禁止访问组 groupid=6禁止IP组
|