日期:2014-05-16  浏览次数:20531 次

【数据库】解决ORA-14450:试图访问已经在使用的事务处理临时表

     今天在改项目中的存储过程时,发现在改一个临时表的列时出现这样的错误

  

无论怎么修改都不行,在网上终于找到了解决办法

1、查找sessionID  

select SID,SERIAL# from V$session  where SID in (select sid from v$enqueue_lock t where t.type='TO')
SID SERIAL#
-------------------------
33 5
68 5
106 5
126 5
 
2、kill session(结束进程)
alter system kill session '33,5’;
alter system kill session '68,5';
alter system kill session '106,5';
alter system kill session '126,5';

 

这时候再修改想要修改的临时表的列就可以了,至于原因不是很清楚