踩坑批量更新sql报错,实际sql能够正常执行的问题
踩坑描述
项目工程迁移之后,新工程与老工程的代码一样,其中一个批量更新的接口在之前老工程上稳定运行,但是迁移之后上线的新工程却报错了
报错信息日志如下:

分析原因
1、看见此报错
第一反应是批量更新的代码写错了,仔细检查并未发现问题


2、将报错日志中的SQL复制下来
看是否能够执行成功,结果很奇怪,竟然执行成功了

3、此时陷入了沉思
代码没问题啊,为啥报错信息为sql错了呢?
只有换一个思路来思考了,从项目代码环境去思考,于是检查了数据库版本,数据库连接配置等。
解决方案
在配置文件中的jdbc连接信息加上allowMultiQueries=true配置,其作用是允许sql批量执行处理,可以在sql语句后携带分号,实现多语句执行。

反思总结
真坑爹啊,一个思路行不通,就换一个思路,既然代码没问题,那就从其他层面思考,不要只顾着检查代码是否正确,从而浪费了大量排查问题的时间~~
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot整合MyBatis实现乐观锁和悲观锁的示例
这篇文章主要介绍了SpringBoot整合MyBatis实现乐观锁和悲观锁的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-09-09
Spring Cloud Gateway 远程代码执行漏洞(CVE-2022-22947)的过程解析
Spring Cloud Gateway 是基于 Spring Framework 和 Spring Boot 构建的 API 网关,它旨在为微服务架构提供一种简单、有效、统一的 API 路由管理方式,这篇文章主要介绍了Spring Cloud Gateway 远程代码执行漏洞(CVE-2022-22947),需要的朋友可以参考下2022-08-08


最新评论