larabbs 访问后台报错

SQLSTATE[42000]: Syntax error or access violation: 1055 'larabbs.topics.title' isn't in GROUP BY (SQL: SELECT COUNT(id) AS aggregate FROM (selecttopics.* fromtopicsgroup bytopics.id`) AS agg)

`
前台可以访问,访问后台就提示这个, 是topic这个表有什么问题是吗? 该如何解决?

patrickouc
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
patrickouc
最佳答案

@Littlesqx 'strict' => false, 改了设置, 可以使用后台功能了。谢谢你。
这个默认是ture ,会不会影响其他地方

7年前 评论
讨论数量: 10

试一下直接用mysql客户端操作这条语句,如果也是同样的错误,参考 这篇文章

7年前 评论
patrickouc

@Littlesqx 参考了这篇文章,设置了,还是一样的错误, 我的mysql 是5.6 ,看说明larabbs 是mysql 5.7 , 会不兼容吗?

7年前 评论

@oucart 应该不是版本的问题,试一下直接在mysql客户端执行目标语句。

SELECT COUNT(id) AS aggregate FROM (select topics.* from topics group by topics.id);
7年前 评论
patrickouc

@Littlesqx
直接执行sql会报错
Error

SQL query: Documentation

SELECT COUNT(id) AS aggregate FROM (select topics.* from topics group by topics.id) LIMIT 0, 30
MySQL said: Documentation

1248 - Every derived table must have its own alias

7年前 评论
1 sudo nano /etc/mysql/my.cnf
2 Add this to the end of the file
[mysqld]  
sql_mode ="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
3 sudo service mysql restart to restart MySQL

这个呢?

7年前 评论

刚才那条语句我写错了 应该是SELECT COUNT(id) AS aggregate FROM (select topics.* from topics group by topics.id) AS agg

7年前 评论
patrickouc

@Littlesqx 这个刚才也是了,按照stackoverflow上的设置了一下,也重启了mysql. 后台还是一样的错误。

7年前 评论
patrickouc

@Littlesqx 'strict' => false, 改了设置, 可以使用后台功能了。谢谢你。
这个默认是ture ,会不会影响其他地方

7年前 评论

@oucart 会不会影响我也不确定哦,这个配置的详细信息可以查询其他资料,或者参考刚才stackoverflow文章的说明

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!