没事乐乐 2015-12-16 09:51 采纳率: 66.7%
浏览 5536

mysql先查询后插入或者更新的事务并发问题?

在对数据进行插入更新的时候遇到一个问题,做了一个事务:
@Transaction
public void insertOrUpdate(entity){
Object o = search(entity);
if(o!=null)
update(entity);
else
insert(entity);
}
上面的伪代码在非并发态,是正常的。但是在并发的时候就会出现插入多条同样的数据,如果调高隔离级别进行控制,就会报:
Deadlock found when trying to get lock; try restarting transaction
求解决方案

  • 写回答

1条回答 默认 最新

  • sinat_31535993 2015-12-16 09:57
    关注

    加锁

    评论

报告相同问题?