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

存储过程被锁定无法编译

原因: 存储过程执行过程中,关闭或者中断存储过程,重新编译是等待时间很长,无法删除

解决:

先查出被锁定存储过程的spid

SELECT spid

FROM V$DB_OBJECT_CACHE?? OC,

?????? V$OBJECT_DEPENDENCY OD,

?????? DBA_KGLLOCK???????? W,

?????? V$SESSION?????????? S,

?????? V$PROCESS?????????? P

??????

WHERE OD.TO_OWNER = OC.OWNER

?? AND OD.TO_NAME = OC.NAME

?? AND OD.TO_ADDRESS = W.KGLLKHDL

?? AND W.KGLLKUSE = S.SADDR

?? AND P.ADDR = S.PADDR

AND OC.NAME = 'SP_PS_DATAWWTPFLOWSUM_U'//存储过程名称

?

登陆被锁定存储过程所属Oracle的安装服务器, 开始->运行-&g