mysql5.7后会出现sql_mode=only_full_group_by的错误信息。
临时解决办法
MySQL中执行如下命令,但MySQL重启后就会失效。
set @@GLOBAL.sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION;
永久解决办法
需修改MySQL配置文件,通过手动添加sql_mode的方式强制指定不需要ONLY_FULL_GROUP_BY属性。
在 [mysqld] 下面添加代码:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
MySQL配置文件位置:
Linux或Mac:/etc/my.cnf
Windows:在数据库安装目录下的 my.ini