Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect) 异常原因及处理

主因 : 事务对程序的影响

原因一:  查询出来的对象和update的对象不是同一个

解决: 用查询出的对象进行set 值, 再用同一个对象update

原因二: 查询出来的对象在缓存中一段时间 , 之后再进行的update

解决: 把这个对象从缓存中剔除(如需要对象属性可先get保存到变量中) , 在update之之前再查询出来进行update

原因三:  同一对象查询了多次 , 数据还在缓存中没有清除.

解决:  清除缓存中的对象

 

原因四:你开了 一个session1,但实际操作用的是session2,最后close的是session1;正确做法是用session2来操作(WU)

 

转自:https://blog.csdn.net/LMAKE_nbsp/article/details/83654182

posted @ 2021-02-24 16:55  信铁寒胜  阅读(5428)  评论(0编辑  收藏  举报