1.打开第一个窗口,查询st表,for update加锁
SQL> conn scott/tiger
Connected.SQL> select * from st for update;
NAME SUBJECT SCORE
-------------------- -------------------- ----------
zs chinese 91
zs maths 92
zs english 93
ls chinese 94
ls maths 95
ls english 96
6 rows selected.
2.打开第二个窗口,查询st表,or update加锁,由于已由第一个窗口锁住,此处结果一直没有返回
SQL> select * from st for update;
3.打开第三个窗口,进行处理,先查找锁住该表的sid
SQL> select sid from v$lock where block =1;
SID
----------
137
4.根据sid查找SERIAL#
SQL> select sid,serial# from v$session where sid = 137;
SID SERIAL#
---------- ----------
137 32
5.kill掉这个session的链接
SQL> alter system kill session '137,32';
System altered.
最后,第一个窗口报session被kill掉,同时第二个窗口显示查询结果