Discuz3.2 因Mysql版本过高(8.0)导致出现 (1064) You have an error in your SQL syntax; 错误

升级了MYSQL 8.0。

Discuz X3.2 变进不去后台。

提示:

(1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'system>0' at line 1
SELECT COUNT(*) FROM common_usergroup WHERE type='special' and system>0
Discuz3.2 因Mysql版本过高(8.0)导致出现 (1064) You have an error in your SQL syntax; 错误

这是因为:

MySQL 8.0+将system和groups作为了关键字,所以不能直接在SQL中将system和groups这两个词作为数据库、数据表、数据表字段中的任意一种使用,如果数据库名或数据表名或数据表字段名使用了system或groups作为名字,必须使用一对反引号引用起来。写作`system`或`groups`。

解决办法:

找到Discuz!目录中的source\class\table\table_common_usergroup.php,比如
\www\xxx\source\class\table\table_common_usergroup.php

第135行 中的

system 改成 ‘system’ ,保存后重新上传到服务器的相同目录即可。

Discuz3.2 因Mysql版本过高(8.0)导致出现 (1064) You have an error in your SQL syntax; 错误

当system更改完毕后,网站能进入后台了。

同时,还有一个MYSQL 版本过高的问题。

就是点击工具-更新缓存的时候,同样也会出现1064的错误,也只需要到相应目录更改一下代码。

discuz 3.2因MYSQL版本过高出现1064 错误,SELECT * FROM forum_announcement WHERE type!=2 AND groups = ” AND starttime

因为当时没有注意更新缓存也是这个原因,所以分成了两篇文章。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索