mysql only_full_group_by以及其他关于sql_mode原因报错详细解决方案
程序员文章站
2023-12-28 10:30:46
...
https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html
这是官网 mysql8 mysql5的类似 介绍sql-mode 的文档 这里有着详细的说明,我只做简单的说明
要想永久的修改sql-mode 模式
在linux 或者unix下面 找到 mysql的conf目录下的 my.cnf
[mysqld]
sql-mode=""
在windows下面则是 my.ini 一般直接在bin的上一层目录下 有这个文件
也和上面一样 在mysqld 下面添加 sql-mode= "" 或者--sql-mode=""都行
或者你了解的modes都行 比如sql-mode = "ONLY_FULL_GROUP_BY"
具体的可以看上面的文档
改完一定要重启mysql服务
这是设置sql-mode为空解决对应的错误类型
Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
设置运行时的sql-mode
可以在navicat 或者其他sql视图管理器中运行
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
然后可以用 下面sql语句来查看字段变化
SELECT @@GLOBAL.sql_mode;