Mybatis 如何使用 Mysql 悲观锁,求解答

Mybatis 如何使用 Mysql 悲观锁,求解答,第1张

悲观锁就陪宏是友乱消数据库里面锁住 类似for update查询

乐观锁不是在数据库端锁住的

而是程序控制的

你说的那Mybatis我不知道是什么

但是乐观锁一般是这样

比如你数据库中有一条记录

你可以给他加上一个版本号

这样

如果同时有2个人查询出那个数据要修改

第一个人先查出来有事走了

第二个人查出来给改了

这时候你看

第一个人查出来的数据版本号比如是1

第二个人查出来也是1 但是他改了数据以后版本号变成2

这时候第一个人回来了继续修改数据

他的好知版本号是1 比2低

这时候就告诉他数据过期

乐观锁大概就是这个意思

是一种思路!

在select查询语句的结尾 加上for update,就可以实现锁行,

使用for update of指定数据列之后,锁定的范围限制在了所在的数据表。也就是说,当我们使用连接查询配合of子饥迟句的时候,可以实现有针对性的锁定。

默认情况下胡锋的for update语句,效果相当于启动了一个会话级别的事务,在对应的数据表上加裤肢晌入一个数据表级共享锁。同时,在对应的数据行中加入独占锁。

泰牛程序员的数据库视频课程里面有讲解


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12249111.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存