MySQL 如何实现乐观锁?

MySQL 如何实现乐观锁?

可以基于版本号实现乐观锁,修改数据的时候带上版本号(或者时间戳):

sql 复制代码
UPDATE student SET name = '小李', version = 2 WHERE id = 100 AND version = 1

在每次数据更新的时候,都带上版本号,同时将版本 + 1,比如现在要更新 id = 1,版本号为 2 的记录,这时候就要先获取 id = 1的版本号,然后更新语句写成

sql 复制代码
UPDATE table SET name = "小明",version = version + 1 WHERE id = 1 and version = 2

如果这个版本号与表记录中的版本号一致的话,就能更新成功,如果不相等就不进行更新,然后需要重新获取该记录的最新版本号,再进行更新数据

相关推荐
q***01776 分钟前
【MySQL】表的基本操作
数据库·mysql·oracle
budingxiaomoli9 分钟前
存储过程和触发器
数据库
q***125321 分钟前
PostgreSQL_安装部署
数据库·postgresql
q***482528 分钟前
mysql用户名怎么看
数据库·mysql
夏日玲子31 分钟前
【Redis】Redis常用命令合集
数据库·redis·缓存
r***123838 分钟前
若依微服务中配置 MySQL + DM 多数据源
android·mysql·微服务
万邦科技Lafite1 小时前
1688图片搜索商品API接口(item_search_img)使用指南
java·前端·数据库·开放api·电商开放平台
自在极意功。1 小时前
SQL查询语句深度解析:从基础到进阶,写出高效优雅的SQL!
数据库·sql
north_eagle1 小时前
MySQL 业务数据,报表方案
大数据·数据库
ALex_zry1 小时前
MySQL连接数管理与优化实操经验分享
android·mysql·adb