ExecutorException: Error getting generated key or setting result to parameter object

本文目录

1、报错信息

2、错误原因

3、解决方法

方案1:

方案2:


1、报错信息

运行环境:springboot + mybatis,数据库为mysql,映射xml文件配置信息useGeneratedKeys="true"

最近在检查一个项目,业务是向数据库中插入一条数据(记录), 发现了一个错,报错信息如下:

Caused by: org.apache.ibatis.executor.ExecutorException: Error getting generated key or setting result to parameter object

2、错误原因

要向一张表批量插入数据,在xml文件中写的插入语句如下:

useGeneratedKeys是设置数据库主键自动增长,而数据库表本身已经是主键自动增长了,所以这个配置就多余了。


3、解决方法

方案1:

将useGeneratedKeys="true" 改为 useGeneratedKeys="false",或者将useGeneratedKeys="true"和keyProperty="id"直接删除

方案2:

配置的Mybatis的版本,高版本的不会出现这个问题。

 

posted @ 2020-04-15 10:36  No8g攻城狮  阅读(859)  评论(0编辑  收藏  举报