PLSQL_COMPILER_FLAGS

Property Description
Parameter type String
Syntax PLSQL_COMPILER_FLAGS = { [ DEBUG | NON_DEBUG ] [ INTERPRETED | NATIVE ] }
Default value INTERPRETED, NON_DEBUG
Modifiable ALTER SESSION, ALTER SYSTEM

Note:

This parameter is deprecated in favor of the PLSQL_CODE_TYPE and PLSQL_DEBUG parameters. Oracle recommends that you use PLSQL_CODE_TYPE and PLSQL_DEBUG instead. PLSQL_COMPILER_FLAGS is retained for backward compatibility only.

PLSQL_COMPILER_FLAGS specifies a list of flags for the PL/SQL compiler as a comma-separated list of strings.

Values:

  • INTERPRETED

    PL/SQL library units will be compiled to PL/SQL bytecode format. Such modules are executed by the PL/SQL interpreter engine.

  • NATIVE

    PL/SQL library units (with the possible exception of top-level anonymous PL/SQL blocks) will be compiled to native (machine) code. Such modules will be executed natively without incurring any interpreter overhead.

  • DEBUG

    PL/SQL library units will be compiled for debugging

  • NON_DEBUG

    PL/SQL library units will be compiled for normal execution

The following combinations of flags are invalid specifications for the PLSQL_COMPILER_FLAGS parameter:

  • NATIVE & DEBUG

  • NATIVE & INTERPRETED

  • NON_DEBUG & DEBUG

When the value of this parameter is changed, it has no effect on PL/SQL library units that have already been compiled. The value of this parameter is stored persistently with the library unit. If a PL/SQL library unit is compiled native, all subsequent automatic recompilations of that library unit will use native compilation.