mysql版本问题引发的Bug

此前mysql数据库一直用的是5.6版本,现在使用5.7版本;

-- 进入数据库:mysql -u mysql -p

-- 查看数据库版本:select version();

-- 异常问题是:

nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'cls.tga.ga_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

-- 解决这个问题如下:

首先查询:select @@sql_code

                 结果如下:

ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

解决方案如下:

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下面的my.cnf文件

添加:sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

之后一定重启数据库

停止数据库:

service mysqld stop

启动数据库:service mysqld start


记录下来,避免同样的问题在花费时间

阅读更多
上一篇JPA生成策略
下一篇直面session
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭