现在的位置: 首页 > 综合 > 正文

Oracle修改被占用的临时表结构

2013年01月23日 ⁄ 综合 ⁄ 共 406字 ⁄ 字号 评论关闭

      这两天在修改临时表的类型时,提示”attempt to create,alter or drop an index on temporary table already in use“的错误,由于临时表被占用锁住,因此,要查出使用该表的session的进程,并将该进程杀死,就可以重新操作临时表结构。操作方法如下,以下这个sql是比较好用的一种网上查找方法,就是几个系统表的链表查询。

       第一步:查找SID和SERIAL#

select sid, serial#
from v$session
where sid = 
(
    select sid
    from v$lock
    where id1 = 
    (
        select object_id
        from user_objects
        where object_name = upper('表名称')
    )
);

    第二步

alter system kill session 'SID,SERIAL#';//SID和SERIAL#是根据第一步查出来的结果。

抱歉!评论已关闭.