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的版本,高版本的不會出現這個問題。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章