异常: 必须执行该语句才能获得结果
Cause: org.apache.ibatis.executor.ExecutorException: Error getting generated key or setting result to parameter object. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 必须执行该语句才能获得结果
原因:
1、表中有触发器,插入时触发了触发器。
2、SQLServer数据库表主键id(之前雪花id没事)设置为自增,然后我使用了MyBatis plus的批量插入方法saveBatch(),此时就报错了。粗略看应该是批量插入方法会获取并返回插入后数据的id,因为现在id为自增,插入时不需要插入id了,所以插入后也获取不到,所以报错。
解决:
参考:http://t.zoukankan.com/yanan7890-p-14425643.html
1、表的触发器中添加SET NOCOUNT ON
2、插入数据时循环语句插入,使用save()方法,就不报错了。