编译Oracle失效的对象

在测试环境中,有大量的存储过程及包在导入时没有编译成功。可以通过如下方法编译

 

select 'Alter ' || replace(object_type, 'BODY', '') || ' ' || object_name ||
' compile;'
from user_objects
where object_type in ('PROCEDURE', 'PACKAGE BODY', 'FUNCTION')
and status = 'INVALID'

 

注意:Pakage Body是不能编译的,直接编译包即可。

posted @ 2018-03-16 10:23  HyperLu  阅读(198)  评论(0编辑  收藏  举报