不是这个意思,我的UPDATE TABLE的语句不能执行,我怀疑表被锁住了,所以我想找到能解锁的系统表,请指教!

解决方案 »

  1.   

    try :
    select d.owner,d.object_name
       from dba_objects d,v$locked_object l
      where l.OBJECT_ID=d.OBJECT_ID
      

  2.   

    select * 
      from v$session
     where saddr in (select raddr 
                       from v$_lock
                      where raddr in (select raddr 
                                        from v$_lock 
                                       where raddr in (select saddr 
                                                         from v$session 
                                                        where lockwait is not null
                                                       )
                                     )
                     );
      

  3.   

    哦,错了
    select * 
      from v$session
     where saddr in (select saddr 
                       from v$_lock
                      where raddr in (select raddr 
                                        from v$_lock 
                                       where saddr in (select saddr 
                                                         from v$session 
                                                        where lockwait is not null
                                                       )
                                     )
                     );
      

  4.   

    如果是被锁,会找到超过1条的记录,
    其中lockwait不为空的就是你的session,被其他的锁住了kill it !alter system kill session 'sid,serial#';