oracle 表级锁

转载 2013年12月04日 10:01:07

表级锁

共享模式(in share mode)

共享更新模式(in share update mode)

排他锁模式

锁定表的通用语法:

lock table 表名 in <share or share update or exclusive mode>;

1) 共享模式

不允许其他用户插入,更新和删除行,多个用户可以同时在同一表上设置共享锁,这样设置锁的多个用户都只能执行查询

lock table emp in share mode;

2)共享更新模式(in share update mode)

允许多个用户同时锁定表的不同行, 允许其他用户进行DML(insert update delete select)操作 , 除了已锁定的行

如: lock table emp in share update mode;

select * from emp where deptno=30 for update //锁定的行

其他用户不能delete ,update 部门30的雇员信息

其他用户可以查看锁定的行: select * from emp where deptno=30

3)排他锁模式(限制性强)

不允许其他用户插入,更新和删除行, 允许查看数据,但只有一个用户可以在表中放置排他锁

lock table emp in exclusive mode;

相关文章推荐

oracle查看被锁的表.rar

  • 2010年11月12日 13:51
  • 1KB
  • 下载

关于oracle的行级锁

在oracle中,行级锁只对用户正在访问的行进行锁定。 如果该用户正在修改某行,那么其他用户就可以更新同一表中该行之外的数据。行级锁是一种排他锁,防止其他事务修改此行,但是不会阻止读取此行的操作。...

Oracle的锁表与解锁

  • 2012年10月15日 17:20
  • 3KB
  • 下载

oracle 锁表和解锁

如果怀疑表被锁了,或者事务未被正常关闭,在Oracle数据库中我们可以通过以下语句进行查询获取相关信息: Sql代码 select t2.username,          t2.sid,...

oracle中锁和表分区

  • 2012年11月19日 17:37
  • 517KB
  • 下载

Oracle的锁表与解锁

SELECT /*+ rule */ s.username, decode(l.type,'TM','TABLE LOCK', 'TX','ROW LOCK', NULL) LOCK_LEVEL, o...
  • ydcun
  • ydcun
  • 2012年09月25日 10:43
  • 648

Oracle的锁表与解锁

Oracle的锁表与解锁   SELECT /*+ rule */ s.username, decode(l.type,'TM','TABLE LOCK', 'TX','ROW LOCK...
  • utnubu
  • utnubu
  • 2012年05月10日 15:27
  • 169

oracle数据库查看用户锁表及对表解锁的sql语句

oracle数据库查看用户锁表及对表解锁的sql语句 大型项目中很多人使用一个用户名登录oracle服务器,很多人都有可能对同一张表进行各种操作,不知不觉地就会出现锁表的情况。如何解决此问题呢?据老...
  • sxtobj
  • sxtobj
  • 2013年05月10日 14:26
  • 1849
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:oracle 表级锁
举报原因:
原因补充:

(最多只允许输入30个字)