Objects need to recompile are: VIEW, SYNONYM, PUBLIC SYNONYM, PROCEDURE, FUNCTION, PACKAGE, PACKAGE BODY, TRIGGER, UNDEFINED (MATERIALIZED VIEW), JAVA CLASS, TYPE, TYPE BODY There are five ways to recompile invalid objects in schemas. 1. DBMS_DDL 2. DBMS_UTILITY 3. UTL_RECOMP 4. UTLRP.SQL 5. Manually Recompile 1. DBMS_DDL This procedure is equivalent to the following SQL statement: ALTER PROCEDUREFUNCTIONPACKAGE [ .] COMPILE [BODY] Exec dbms_ddl.alter_compile ( type , schema, name); SQL> exec dbms_ddl.alter_compile ('PROCEDURE','SCOTT','TEST'); 2. DBMS_UTILITY This procedure compiles all procedures, functions, packages, and triggers in the specified schema. Exec dbms_utility.compile_schema ( schema,compile all) SQL> exec dbms_utility.compile_schema('SCOTT'); 3. UTL_RECOMP This script is particularly useful after a major-version upgrade that typically invalidates all PL/SQL and Java objects. Exec UTL_RECOMP....