请高手们,帮忙解决下:      用 truncate 删除表中数据时,报 资源正忙的错误。想查看一些谁在对这张表进行操作,进行了什么操作。

解决方案 »

  1.   

    SELECT  S.SID SESSION_ID, S.USERNAME, 
    DECODE(LMODE, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)',  4, 'Share', 5, 'S/Row-X (SSX)',  6, 'Exclusive', TO_CHAR(LMODE)) MODE_HELD, 
    DECODE(REQUEST, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR(REQUEST)) MODE_REQUESTED, 
    O.OWNER||'.'||O.OBJECT_NAME||' ('||O.OBJECT_TYPE||')', 
    S.TYPE LOCK_TYPE, L.ID1 LOCK_ID1, L.ID2 LOCK_ID2 
    FROM V$LOCK L, SYS.DBA_OBJECTS O, V$SESSION S 
    WHERE L.SID = S.SID AND  L.ID1 = O.OBJECT_ID
    查看下哪个表和用户存在锁...
      

  2.   

    楼上从事 oracle 很久了吧!好久地方,都看到阁下的足迹!给出也是一些高质量的解决方案。
      

  3.   

    Good good study , and day day up!