如何在其他Session跳过被锁定的记录

来源:互联网 发布:js qq幻灯片效果 编辑:程序博客网 时间:2024/04/28 18:04
有人问到这样的问题:如果一个用户对记录加锁,如何使其他用户看不到这条记录。
此前并未注意到这样一个用法(需要8.1.7.4.16以上的版本支持):

[oracle@jumper oracle]$ sqlplus scott/tigerSQL*Plus: Release 9.2.0.4.0 - Production on Fri Mar 4 11:59:46 2005Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.Connected to:Oracle9i Enterprise Edition Release 9.2.0.4.0 - ProductionWith the Partitioning optionJServer Release 9.2.0.4.0 - ProductionSQL> select * from dept;    DEPTNO DNAME          LOC---------- -------------- -------------        10 ACCOUNTING     NEW YORK        20 RESEARCH       DALLAS        30 SALES          CHICAGO        40 OPERATIONS     BOSTON        33 ORACLE         beijing        35 Oracle         Beijing        36 Oracle         Beijing        37 Oracle         Beijing8 rows selected.SQL> select * from dept where  deptno =10 for update;    DEPTNO DNAME          LOC---------- -------------- -------------        10 ACCOUNTING     NEW YORKSQL> ![oracle@jumper oracle]$ sqlplus scott/tigerSQL*Plus: Release 9.2.0.4.0 - Production on Fri Mar 4 12:00:14 2005Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.Connected to:Oracle9i Enterprise Edition Release 9.2.0.4.0 - ProductionWith the Partitioning optionJServer Release 9.2.0.4.0 - ProductionSQL> select * from dept for update skip locked;    DEPTNO DNAME          LOC---------- -------------- -------------        20 RESEARCH       DALLAS        30 SALES          CHICAGO        40 OPERATIONS     BOSTON        33 ORACLE         beijing        35 Oracle         Beijing        36 Oracle         Beijing        37 Oracle         Beijing7 rows selected.SQL> 
存此备忘。
原创粉丝点击