相信大家对锁的理解有点迷糊吧,我以前也是对锁的概念模糊,今天特意专门研究了一下。
oracle中的锁:分为排它锁,共享锁,悲观锁,乐观锁。
排它锁:(X锁)当有DML语言执行的时候,设计的行就会加上排它锁,其他事物不能进行读取修改
共享锁(S锁)加了共享锁的数据,可以被其他事物读取,但不能修改。如select语句。
悲观锁:每次都是假设数据肯定会冲突,数据开始读取时就把数据给锁住。
乐观锁:每次都是假设一般情况下不会发生数据冲突,只有数据更新提交的时候,才会对数据的冲突与否进行检测,如果发生冲突,返回错误信息让用户处理。