mysql乐观锁

文章介绍了MySQL中实现乐观锁的基本方法,即通过添加version字段,在更新时检查并增加版本号。当两个请求尝试同时修改同一数据时,只有版本匹配的请求才能成功,以此确保数据的一致性和隔离性。使用@Transactional注解可以保证操作的原子性。
摘要由CSDN通过智能技术生成

mysql乐观锁,最基本的方案就是在数据库加一个version 字段

操作的时候进行加1

如果有两个请求同时操问一条数据

那么先请求的 接口 修改内容 为 

update kunkun_table set content = "炒粉" , version = 2 where id = 1

and version = 1 //版本同时

为方便演示在用sql直接执行

然后版本加1

另一个请求再次修改为

update kunkun_table set content = "放鸡精" , version = 2 where id = 1

and version = 1 // 已经修改不到上次的请求 驳回该请求 

得到数据为

 

从而实现乐观锁 不过乐观锁只能保证事务的 一致性和隔离性,需要注解 

@Transactional 来保证原子性
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值