mysql 错误 ERROR: [SQLCODE] 1055 , [SQLSTATE] 42000 排查思路

mysql 错误 ERROR: [SQLCODE] 1055 , [SQLSTATE] 42000 排查思路,第1张

研发创建了存储过程,需要部署定时任务,在上线前进行检查,执行定时脚本时,出现了如下报错

ERROR: [SQLCODE] 1055 , [SQLSTATE] 42000 , [MESSAGE] Expression #1 of ORDER BY clause is not in GROUP BY

此时查看sql_mode,发现里面没有only_full_group_by,但是执行还会报错,怀疑是链接没断开,当前session没生效,断开重连还是一样的报错

遂查看存储过程 show create procedure dataabase.procname

发现创建之前的sql_mode有only_full_group_by,为了能正常运行,在当前模式下,删除新建存储过程,即可重新调用,执行成功。

本文实例讲述了MySQL实现创建存储过程并循环添加记录的方法。分享给大家供大家参考,具体如下:

先创建,然后调用:

--

创建存储过程

DELIMITER//

create

procedure

myproc()

begin

declare

num

int

set

num=1

while

num

<=

24

do

insert

into

t_calendar_hour(hourlist)

values(num)

set

num=num+1

end

while

commit

end//

--

调用存储过程

CALL

myproc()

PS:这里再为大家推荐2款常用的sql在线工具供大家参考使用(包含SQL语句用法说明):

SQL在线压缩/格式化工具:

http://tools.jb51.net/code/sql_format_compress

SQL代码在线格式化美化工具:

http://tools.jb51.net/code/sqlcodeformat

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL存储过程技巧大全》、《MySQL常用函数大汇总》、《MySQL日志 *** 作技巧大全》、《MySQL事务 *** 作技巧汇总》及《MySQL数据库锁相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/8325740.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存