|Oracle® Database PL/SQL Language Reference
11g Release 1 (11.1)
|PDF · Mobi · ePub|
GOTO statement branches unconditionally to a statement label or block label. The label must be unique within its scope and must precede an executable statement or a PL/SQL block. The
GOTO statement transfers control to the labeled statement or block.
A label that you assigned to an executable statement or a PL/SQL block. A
GOTO statement transfers control to the statement or block following
GOTO label must precede an executable statement or a PL/SQL block. A
GOTO statement cannot branch into an
LOOP statement, or sub-block. To branch to a place that does not have an executable statement, add the
From the current block, a
GOTO statement can branch to another place in the block or into an enclosing block, but not into an exception handler. From an exception handler, a
GOTO statement can branch into an enclosing block, but not into the current block.
If you use the
GOTO statement to exit a cursor
FOR loop prematurely, the cursor is closed automatically. The cursor is also closed automatically if an exception is raised inside the loop.
A given label can appear only once in a block. However, the label can appear in other blocks including enclosing blocks and sub-blocks. If a
GOTO statement cannot find its target label in the current block, it branches to the first enclosing block in which the label appears.