This chapter explains how to use the SQL statements that create, change, and drop stored PL/SQL units.
CREATE [ OR REPLACE ] Statements
Each of these SQL statements creates a PL/SQL unit at schema level and stores it in the database:
Each of these
CREATE statements has an optional
REPLACE clause. Specify
REPLACE to re-create an existing PL/SQL unit—that is, to change its declaration or definition without dropping it, re-creating it, and regranting object privileges previously granted on it. If you redefine a PL/SQL unit, the database recompiles it.
REPLACE statement does not issue a warning before replacing the existing PL/SQL unit.
None of these
CREATE statements can appear in a PL/SQL block.
To recompile an existing PL/SQL unit without re-creating it (without changing its declaration or definition), use one of these SQL statements:
Reasons to use an
ALTER statement are:
To explicitly recompile a stored unit that has become invalid, thus eliminating the need for implicit runtime recompilation and preventing associated runtime compilation errors and performance overhead.
To recompile a stored unit with different compilation parameters.
To enable or disable a trigger.
To specify the
NONEDITIONABLE property of a stored unit whose schema object type is not yet editionable in its schema.
TYPE statement has additional uses.
To drop an existing PL/SQL unit from the database, use one of these SQL statements: