Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

compilando procedimentos oracle inválidos


Você pode usar o SQL dinâmico para quebrar a dependência:
CREATE OR REPLACE PROCEDURE proc_main AS
BEGIN

   EXECUTE IMMEDIATE 'BEGIN proc_child1; END;';

   EXECUTE IMMEDIATE 'BEGIN proc_child2; END;';

   EXECUTE IMMEDIATE 'BEGIN proc_child3; END;';

   proc_compile_invalids;  -- This invokes 
                           -- "alter procedure <procedure_name> compile" 
                           -- statement for all the invalids.

END;