mysql异常ERROR 1055 (42000)说明
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,具体异常信息如下:ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains non
千家信息网最后更新 2024年11月11日mysql异常ERROR 1055 (42000)说明
具体异常信息如下:
ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'aaa.test.age' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
执行这样的SQL语句可重现异常 select age, name from test group by name
mysql5.1,不报异常
mysql5.5,不报异常
mysql5.6,不报异常
mysql5.7.22,报异常(具体从5.7哪个版本开始还没有确定下来,网上有人说5.7.5)
mysql从5.7的某个版本开始调整了默认参数sql_mode值为:
mysql> show variables like 'sql_mode';+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+| Variable_name | Value |+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+| sql_mode | 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 |+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)mysql>
其中ONLY_FULL_GROUP_BY就是影响了上面SQL语句是否报异常
解决方法:
1、改写SQL语句,毕竟上面的写法不是标准的SQL语句
2、登陆mysql服务器,执行以下命令,在global与session级都修改
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> set session 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、结合第2种方法,在my.cnf文件中,指定sql_mode的值:
[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
注:2与3结合可不用重启服务器,且即使重启配置也依然有效。
语句
方法
服务器
版本
服务
有效
不用
信息
写法
参数
命令
就是
文件
标准
面的
影响
登陆
调整
配置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库中以存在
ado数据库查询
舟山桌面软件开发
校园网络安全加强措施
网络安全 信息系统定级
违反国家网络安全法第二十三条
移动app软件开发外包
数据库安全性登录名密码设置
数据库授权命令是什么
富会高速公路项目数据库
2017近期网络安全事件
省钱软件开发商
海纳通软件开发怎么样
网络安全靶场恒安嘉新
对网络安全的认识简说
小米安全中心开启云服务器
服务器保留端口
武汉市凯维网络技术有限公司
建立垃圾数据库的意义
服务器在boot配置中如何关机
团中央网络技术部邵德海级别
网络安全服务机制
互联网时代科技手抄报
贵州it软件开发
三级的网络安全手抄报
数据库isbn怎么设置
我的世界面板服务器和vps
我要看网络安全手抄报的
记算机软件开发与应用
中扬联众互联网科技