![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL1EEVPBTVU5UMRpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLwMTOxUTO0AjMwIjMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
1.行级锁(悲观锁)
select ename, job, sal from emp where job = ‘Manager’ for update;
在后面加了for update就产生了行级锁
作用:
将查询结果集在表中的对应的记录,开始锁住,在当前事务结束前,别的事务根本修改不了锁住的数据。
2.乐观锁
乐观锁会在数据后面添加一个隐藏的版本号,假设为version。
只要事务读取到的版本号没有改变,事务就能对数据进行修改
参考:https://blog.csdn.net/pipizhen_/article/details/107912695