最近访客
百度未收录

如果Discuz中表不存在,应该如何解决?

你使用Discuz论坛程序建站,或许会遇到1146报错。

例:

[1146] Table ‘shujuku1.common_session’ doesn’t exist

[1146] Table ‘shujuku2.common_cron’ doesn’t exist

以上是两条数据库报错信息。

不会英语没关系,我们可以使用百度翻译等众多翻译软件来看报错后的信息提示。

这两条的大概意思是:

Table:数据表。shujuku1/shujuku2:这2个是数据库名,一般就是自己的数据库,记住在单引号开头的是数据库名就行。

common_session/common_cron:这2个是数据表,也就是需要重建的表。

doesn’t exist:不存在。如果不认识这2个单词可以使用在线翻译。

简单的讲:就是数据库的这连个表不存在。

既然知道这些不存在了,我们就得修复。

解决办法

去官网下载官方的Discuz程序包(下自己网站的版本),然后打开 \\upload\\install\\data\\install.sql CTRL+F搜索报错的表名common_session。找到建表语句

如:

DROP TABLE IF EXISTS pre_common_session;
CREATE TABLE pre_common_session (
  sid char(6) NOT NULL DEFAULT \'\',
  ip1 tinyint(3) unsigned NOT NULL DEFAULT \'0\',
  ip2 tinyint(3) unsigned NOT NULL DEFAULT \'0\',
  ip3 tinyint(3) unsigned NOT NULL DEFAULT \'0\',
  ip4 tinyint(3) unsigned NOT NULL DEFAULT \'0\',
  uid mediumint(8) unsigned NOT NULL DEFAULT \'0\',
  username char(15) NOT NULL DEFAULT \'\',
  groupid smallint(6) unsigned NOT NULL DEFAULT \'0\',
  invisible tinyint(1) NOT NULL DEFAULT \'0\',
  `action` tinyint(1) unsigned NOT NULL DEFAULT \'0\',
  lastactivity int(10) unsigned NOT NULL DEFAULT \'0\',
  lastolupdate int(10) unsigned NOT NULL DEFAULT \'0\',
  fid mediumint(8) unsigned NOT NULL DEFAULT \'0\',
  tid mediumint(8) unsigned NOT NULL DEFAULT \'0\',
  UNIQUE KEY sid (sid),
  KEY uid (uid)
) TYPE=HEAP;

其实第一行可以不要,不过无所谓,这句代码的意思是如果这个表存在则删除,反正已经没有了。

注意:上面的SQL命令,结合自己的表前缀来进行修改。如果你的表前缀不是pre,请自己修改成自定义的前缀名。

温馨提示:本文最后更新于2022/10/20 00:51:48。若文章内容或图片失效,请留言联系站长反馈!
!
也想出现在这里? 联系我们
创意广告
© 版权声明
THE END
点赞0赞赏 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容