sql_mode详解,bug修复!!!!!
发布时间:2022-08-09 11:12:37 所属栏目:MsSql教程 来源:互联网
导读:废话不多说直接上错误提示,哈哈哈 bug开始!!!! INSERT INTO mmb_user (openid,mobile,wxmobile,password,age,realnm,nicknm,avatar,height,weight,sex,country,province,city,invdcd,unionid,create_date,valid) VALUES (?,?, ?,?, ?, ?,?,?,?,?,?,?, ?
|
废话不多说直接上错误提示,哈哈哈 bug开始!!!! INSERT INTO mmb_user (openid,mobile,wxmobile,password,age,realnm,nicknm,avatar,height,weight,sex,country,province,city,invdcd,unionid,create_date,valid) VALUES (?,?, ?,?, ?, ?,?,?,?,?,?,?, ?,?, ?, ?, now(), '1' ) on duplicate key update nicknm = ?, openid = ?,avatar = ?, update_date = now(),valid = '1' ### Cause: java.sql.SQLSyntaxErrorException: In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'ygdb.mmb.id'; this is incompatible with sql_mode=only_full_group_by ; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'ygdb.mmb.id'; this is incompatible with sql_mode=only_full_group_by In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'ygdb.mmb.id'; this is incompatible with sql_mode=only_full_group_by In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'ygdb.mmb.id'; this is incompatible with sql_mode=only_full_group_by 在没有分组依据的聚合查询中,选择列表的表达式#1包含未聚合的列“ygdb.mmb.id”;这与sqlu mode=onlyu fullu groupu by不兼容 意思就我的mysql语法校验规则不合规 那我就在mysql中执行,查看一下,确实有ONLY_FULL_GROUP_BY ①命令:select @@GLOBAL.sql_mode或者select @@SESSION.sql_mode ②命令:SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY','')); ③命令:select version(), @@sql_mode; 完事!!! 下面还有惊喜哦,哈哈哈哈哈哈 在表里是没有问题了,但是在存储过程里面是对sql_mode无效的哦!!!需要在过程里面在加入这么一句就支持存储过程了,太棒了。bug修复完成!!!! SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY','')); (编辑:哈尔滨站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
