(1)当你不知道哪张表锁了,那你要想找被锁了的表,通过如下SQL语句:
select * from v$locked_object 其中object_id是对象的ID,session_id是被锁定对象有session ID;表v$locked_object看不到,被锁表的表名的,那就通过object_id,找到表明
(2)select object_name, object_type from dba_objects where object_id = 刚才查出来的object_id;(根据v$locked_object里的object_id提出来的)
这样来查被锁定这个对象的名字
(3)3、select sid, serial#, machine, program from v$session where sid =第1步中查出来的session_id;(是根据v$locked_object对应锁定记录的session_id找出来的) 然后
(4)alter system kill session 'sid,serial#';用来杀死这个会话;(这里可能会报错:没有权限,我也是,但解锁了一张表,另外一张没有解锁)
以上几个步骤即能解决对象被锁定问题。