这个错误,看了网上大部分的贴子都说是主键自增设了值问题,但是我的主键非自增的手动赋值了,也出现此错误,原因如下:
JPA使用 save更新数据的时候,如果数据没有任何变化也会报错,我们翻译一下这个错误:
Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
批更新从更新[0]返回意外的行计数;实际行数:0;应为:1
save如果记录存在是更新 ,不存在就是新增,当记录存在的时候要更新你的数据却没什么变化,所以结论如下:
save更新的时候数据没有任何变化,就抛出的此异常,应该JPA有这个异常机制。
所以更新的时候要确保数据有变化,可以加一个更新时间字段,这样也不会导致报错。