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

 找回密码
 立即注册
搜索

[发布] X2修改版块fid

[复制链接]
轩辕叶 发表于 2011-10-21 22:17:54 | 显示全部楼层 |阅读模式
本帖最后由 轩辕叶 于 2011-10-22 13:18 编辑

不是插件是数据库升级语句,但是似乎别的地方和这个内容更无关了,所以就发到这里吧0 0

主要是X2因为群组id和版块id合并所以版块id从1、2之后就是36嘛,所以找了这个方法。
升级前先备份免得升级错了,然后要确定新的fid没有占用,也就是需要先删掉那些占用fid的群组。
因为修改数据库不可避免会造成一些错误,建议是新建一个版块,修改新版块fid,然后把旧版块东西挪过去比较不容易出错。
如果直接修改现有板块,可能会出现分类消失(那个分类的帖子就只能在后台找到了),版块规则消失之类的。

  1. UPDATE  `pre_forum_access` SET  `fid` =  '新版块id' WHERE  `pre_forum_access`.`fid` =旧版块id LIMIT 1 ;
  2. UPDATE  `pre_forum_forumfield` SET  `fid` =  '新版块id' WHERE  `pre_forum_forumfield`.`fid` =旧版块id LIMIT 1 ;
  3. UPDATE  `pre_forum_forum` SET  `fid` =  '新版块id' WHERE  `pre_forum_forum`.`fid` =旧版块id LIMIT 1 ;
  4. UPDATE  `pre_forum_moderator` SET  `fid` =  '新版块id' WHERE  `pre_forum_moderator`.`fid` =旧版块id LIMIT 1 ;
  5. UPDATE  `pre_forum_post` SET  `fid` =  '新版块id' WHERE  `pre_forum_post`.`fid` =旧版块id LIMIT 1 ;
  6. UPDATE  `pre_forum_rsscache` SET  `fid` =  '新版块id' WHERE  `pre_forum_rsscache`.`fid` =旧版块id LIMIT 1 ;
  7. UPDATE  `pre_common_session` SET  `fid` =  '新版块id' WHERE  `pre_common_session`.`fid` =旧版块id LIMIT 1 ;
  8. UPDATE  `pre_forum_thread` SET  `fid` =  '新版块id' WHERE  `pre_forum_thread`.`fid` =旧版块id LIMIT 1 ;
  9. UPDATE  `pre_common_credit_rule_log` SET  `fid` =  '新版块id' WHERE  `pre_common_credit_rule_log`.`fid` =旧版块id LIMIT 1 ;
  10. UPDATE  `pre_common_report` SET  `fid` =  '新版块id' WHERE  `pre_common_report`.`fid` =旧版块id LIMIT 1 ;
  11. UPDATE  `pre_forum_forumrecommend` SET  `fid` =  '新版块id' WHERE  `pre_forum_forumrecommend`.`fid` =旧版块id LIMIT 1 ;
  12. UPDATE  `pre_forum_groupcreditslog` SET  `fid` =  '新版块id' WHERE  `pre_forum_groupcreditslog`.`fid` =旧版块id LIMIT 1 ;
  13. UPDATE  `pre_forum_groupfield` SET  `fid` =  '新版块id' WHERE  `pre_forum_groupfield`.`fid` =旧版块id LIMIT 1 ;
  14. UPDATE  `pre_forum_groupinvite` SET  `fid` =  '新版块id' WHERE  `pre_forum_groupinvite`.`fid` =旧版块id LIMIT 1 ;
  15. UPDATE  `pre_forum_groupranking` SET  `fid` =  '新版块id' WHERE  `pre_forum_groupranking`.`fid` =旧版块id LIMIT 1 ;
  16. UPDATE  `pre_forum_groupuser` SET  `fid` =  '新版块id' WHERE  `pre_forum_groupuser`.`fid` =旧版块id LIMIT 1 ;
  17. UPDATE  `pre_forum_optionvalue1` SET  `fid` =  '新版块id' WHERE  `pre_forum_optionvalue1`.`fid` =旧版块id LIMIT 1 ;
  18. UPDATE  `pre_forum_optionvalue旧版块id` SET  `fid` =  '新版块id' WHERE  `pre_forum_optionvalue旧版块id`.`fid` =旧版块id LIMIT 1 ;
  19. UPDATE  `pre_forum_optionvalue3` SET  `fid` =  '新版块id' WHERE  `pre_forum_optionvalue3`.`fid` =旧版块id LIMIT 1 ;
  20. UPDATE  `pre_forum_optionvalue4` SET  `fid` =  '新版块id' WHERE  `pre_forum_optionvalue4`.`fid` =旧版块id LIMIT 1 ;
  21. UPDATE  `pre_forum_postlog` SET  `fid` =  '新版块id' WHERE  `pre_forum_postlog`.`fid` =旧版块id LIMIT 1 ;
  22. UPDATE  `pre_forum_typeoptionvar` SET  `fid` =  '新版块id' WHERE  `pre_forum_typeoptionvar`.`fid` =旧版块id LIMIT 1 ;
  23. UPDATE  `pre_forum_threadtype` SET  `fid` =  '新版块id' WHERE  `pre_forum_threadtype`.`fid` =旧版块id LIMIT 1 ;
  24. UPDATE  `pre_forum_threadlog` SET  `fid` =  '新版块id' WHERE  `pre_forum_threadlog`.`fid` =旧版块id LIMIT 1 ;
  25. UPDATE  `pre_forum_threadclass` SET  `fid` =  '新版块id' WHERE  `pre_forum_threadclass`.`fid` =旧版块id LIMIT 1 ;
  26. UPDATE  `pre_forum_statlog` SET  `fid` =  '新版块id' WHERE  `pre_forum_statlog`.`fid` =旧版块id LIMIT 1 ;
复制代码

注意替换时不要删掉那些符号,比如'新版块id'替换为'3'而不是3

然后还有一个方法改fid,是在安装论坛之前修改安装文件。
因为这些群组都不是系统内置的,而是安装文件时执行的,用记事本打开install/data里面的文件,删掉不要的就可以。
我附上一个我删得比较彻底的包,我就是用这个安装的,理论上没缺什么东西……
地区数据全都删掉了,然后那些群组全删了,默认友链删了,默认的用户组只留下了管理、超版、版和普通会员四个,还删了不少其他的,group_index这个文件我没有修改。

回复

使用道具 举报

 楼主| 轩辕叶 发表于 2011-10-21 22:20:25 | 显示全部楼层
SF自占,我是技术渣,这个是看数据库一点点看出来的,出现问题我不会知道解决方法0A0
无论如何升级数据库之前一定要备份数据库!!!
回复

使用道具 举报

ns3339 发表于 2011-10-21 22:21:55 | 显示全部楼层
收藏先,感谢分享
回复

使用道具 举报

yz81 发表于 2011-10-21 22:54:55 | 显示全部楼层
支持一个,收藏备用。
回复

使用道具 举报

l250388178 发表于 2011-10-22 10:11:30 | 显示全部楼层
让我们将事前的忧虑,换为事前的思考和计划吧!
回复

使用道具 举报

 楼主| 轩辕叶 发表于 2011-10-22 13:18:04 | 显示全部楼层
LS什么意思不懂了= =
回复

使用道具 举报

sw08 发表于 2011-10-22 14:01:03 来自手机 | 显示全部楼层
fid纠结这个干什么?
回复

使用道具 举报

movie007 发表于 2011-10-22 14:02:42 | 显示全部楼层
学习了!
回复

使用道具 举报

 楼主| 轩辕叶 发表于 2011-10-22 22:51:25 | 显示全部楼层
sw08 发表于 2011-10-22 14:01
fid纠结这个干什么?

大概就是数字控吧……
反正看到很多人纠结……
回复

使用道具 举报

 楼主| 轩辕叶 发表于 2011-10-23 11:23:02 | 显示全部楼层
诶嗨表示自己顶一下
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-25 18:13 , Processed in 0.108218 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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