快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

ag和记app_集报网



创建测试表

create">aaa@AAA.US.ORACLE.COM>create table test (a number,b number);

表已创建。

1 对付未提交的insert操作

insert">aaa@AAA.US.ORACLE.COM>insert into test values(10,20);

已创建 1 行。

SQL> select * from v$lock;

ADDR KADDR SID TYPE ID1 D2 LMODE REQUEST CTIME BLOCK

12AB9394 12AB93A8 17 TM 29512 0 3 0 84 0

12AF9218 12AF9324 17 TX 589841 5506 6 0 84 0

可见,对付未提交的insert操作ag和记app,会孕育发生两个锁,其类型(TYPE)分手为TM和TX,也便是表级意向锁和事务锁。

表级意向锁的模式(LMODEag和记app)为:3,表示是row exclusive,即表示此表中的某行得到了行排他锁。

事务锁的模式(LMODE)为:6, 表示是exclusive,即排他ag和记app锁,表示此事务得到了排他锁。

BLOCK表示此锁是否壅闭了其它的锁,即产存亡锁;此处没有。

2 对付提交的insert操作

commit">aaa@AAA.US.ORACLE.COM>commit;

提交完成。

SQL> select * from v$lock;

ADDR KADDR SID TYPE ID1 D2 LMODE REQUEST CTIME BLOCK

此处已没有记录,阐明在提交后,即完成了锁的开释。

3 对付未提交的update操作

update">aaa@AAA.US.ORACLE.COM>update test set a=11 where a=10;

已更新 1 行。

SQL> select * from v$lock;

ADDR KADDR SID TYPE ID1 D2 LMODE REQUEST CTIME BLOCK

12AB9394 12AB93A8 17 TM 29512 0 3 0 3 0

12AF9218 12AF9324 17 TX 262153 5590 6 0 3 0

可见update操作所引起的锁的信息完全等同于insert操作ag和记app……

4 对付提交的update操作

commit">aaa@AAA.US.ORACLE.COM>commit;

提交完成。

SQL> select * from v$lock;

ADDR KADDR SID TYPE ID1 D2 LMODE REQUEST CTIME BLOag和记appCK

此处已没有记录,阐明在提交后,即完成了锁的开释。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: