Oracle锁的全部类型的示例


  本文标签:Oracle锁

  以下的文章主要介绍的是Oracle锁的工作机制,以及Oracle锁的类型的介绍,实际中其应用比例还是占为多数的,如果你对其心存好奇的话,以下的文章将会揭开它的神秘面纱  。望大家借鉴  。

  0 - none

  1 - null (NULL)

  2 - row-S (SS)

  3 - row-X (SX)

  4 - share (S)

  5 - S/Row-X (SSX)

  6 - exclusive (X)

  0 - 没有

  1 - 空(NULL)

  2 - 行子共享模式(SS)

  3 - 行共享互斥模式(SX)

  4 - 共享模式(S)

  5 - 行子共享互斥模式

  6 - 互斥模式(X)

  DML操作引起的Oracle锁的类型和描述:

  

  1. Operation Lock Mode LMODE Lock Description  
  2. ------------------------- ---------- ------ -----------------  
  3. Select NULL 1 null  
  4. Select for update SS 2 sub share  
  5. Insert SX 3 sub exclusive  
  6. Update SX 3 sub exclusive  
  7. Delete SX 3 sub exclusive  
  8. Lock For Update SS 2 sub share  
  9. Lock Share S 4 share  
  10. Lock Exclusive X 6 exclusive  
  11. Lock Row Share SS 2 sub share  
  12. Lock Row Exclusive SX 3 sub exclusive  
  13. Lock Share Row Exclusive SSX 5 share/sub exclusive  
  14. Alter table X 6 exclusive  
  15. Drop table X 6 exclusive  
  16. Create Index S 4 share  
  17. Drop Index X 6 exclusive  
  18. Truncate table X 6 exclusive  
  19. -----------------------------------------------------------  

  

  Oracle锁的兼容性,YES表示锁可以共同存在,NO表示互斥  。

  

  1. NULL SS SX S SSX X  
  2. ------ ---- ---- ---- ----- ----  
  3. NULL| YES YES YES YES YES YES  
  4. SS | YES YES YES YES YES NO  
  5. SX | YES YES YES NO NO NO  
  6. S | YES YES NO YES NO NO  
  7. SSX | YES YES NO NO NO NO  
  8. X | YES NO NO NO NO NO