java服务调用mysql报错

一、前言

前端服务调用后端服务时出现以下报错,原因是使用mysql5.7版本数据库中存在ONLY_FULL_GROUP_BY这个配置项导致的不兼容

MySQLSyntaxErrorException: Expression #32 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'demeter_foundation.sorg.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

二、解决

在mysql命令行中执行以下命令(临时更改)

5.7以上版本执行

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';

8.0以上版本执行

set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

更改mysql配置文件(永久更改)

vi /etc/my.cnf

bash 复制代码
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION  #5.7以上版本配置此项

sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION   #8.0以上版本配置此项

重新启动mysql服务

systemctl restart mysqld

相关推荐
雨中飘荡的记忆14 小时前
Spring MVC详解
java·spring
即将进化成人机14 小时前
Spring Boot入门
java·spring boot·后端
Acrelhuang14 小时前
直击新能源电能质量痛点:安科瑞 APView500 在线监测装置应用方案
大数据·运维·开发语言·人工智能·物联网
苏打水com14 小时前
HTML/CSS 核心考点详解(字节跳动 ToB 中台场景)
java·前端·javascript
-大头.14 小时前
Spring批处理与任务管理全解析
java·linux·spring
无限进步_15 小时前
C++从入门到类和对象完全指南
开发语言·c++·windows·git·后端·github·visual studio
lalala_lulu15 小时前
Lambda表达式是什么
开发语言·python
科普瑞传感仪器15 小时前
基于六维力传感器的机器人柔性装配,如何提升发动机零部件装配质量?
java·前端·人工智能·机器人·无人机
她说..15 小时前
Java AOP完全指南:从原理到实战(全套知识点+场景总结)
java·开发语言·spring·java-ee·springboot
Sammyyyyy15 小时前
Rust性能调优:从劝退到真香
开发语言·后端·rust·servbay