开心生活没一天 2022-01-20 14:42 采纳率: 69.2%
浏览 30

乐观锁是基于版本号和更新操作加x锁实现的吗

我在想如果两个进程都获得旧版本号,然后各自的一条更新sql进去并发执行,如果更新操作不加x锁,单个sql是事务,第一条sql语句where判断版本号后,还未更新,就跳到了第二条语句执行,然后第一条语句继续执行,导致第二条sql更新被覆盖。那降低事务隔离等级,乐观锁就会有问题,我的理解有问题吗

  • 写回答

1条回答 默认 最新

  • zxc123456zxcyyu 2022-01-20 18:57
    关注

    是的,如果在提交事务之前,它判断不了数据已经更新了,它就会覆盖前面的那个操作(望采纳)

    评论

报告相同问题?

问题事件

  • 创建了问题 1月20日