当前位置:Gxlcms > 数据库问题 > Oracle——事务(Transaction)

Oracle——事务(Transaction)

时间:2021-07-01 10:21:17 帮助过:3人阅读

  NO_TRANSACTION     不支持事务

  READ_UNCOMMITED    允许脏读、不可重复读、幻读

  READ_COMMITED      允许不可重复读、幻读,不允许脏读

  REPEATABLE       允许幻读,不允许脏读、不可重复读

  SERIALIZABLE       脏读、不可重复读、幻读都不允许

Oracle支持SQL92标准的READ_COMMITED、SERIALIZABLE,自身特有的READ_ONLY

 

锁:

排它锁:(X锁,eXclusive LockS)

  当有DML语句执行的时候,设计的行都会加上排它锁,其他事物不能进行读取修改。

共享锁:(S锁,Shared Locks)

  加了共享锁的数据,可以被其他事物读取,但不能修改。如select语句。

为了保证性能:乐观锁,悲观锁

  悲观锁:每次都是假设数据肯定会冲突,数据开始读取时就把数据给锁住。

  乐观锁:每次都是假设一般情况下不会发生数据冲突,只有数据更新提交的时候,才会对数据的冲突与否进行检测,如果发生冲突,返回错误信息让用户处理。

Oracle——事务(Transaction)

标签:

人气教程排行