Oracle® Database PL/SQL Language Reference 11g Release 2 (11.2) Part Number E25519-05 |
|
|
PDF · Mobi · ePub |
The WHILE
LOOP
statement runs one or more statements while a condition is TRUE
. The WHILE
LOOP
statement ends when the condition becomes FALSE
or NULL
, or when a statement inside the loop transfers control outside the loop or raises an exception.
LNPLS1866Topics
LNPLS1867while_loop_statement ::=
See:
LNPLS1868boolean_expression
Expression whose value is TRUE
, FALSE
, or NULL
.
boolean_expression
is evaluated at the beginning of each iteration of the loop. If its value is TRUE
, the statements after LOOP
run. Otherwise, control transfers to the statement after the WHILE
LOOP
statement.
LNPLS1869statement
To prevent an infinite loop, at least one statement must change the value of boolean_expression
to FALSE
or NULL
, transfer control outside the loop, or raise an exception. The statements that can transfer control outside the loop are:
"CONTINUE Statement" (when it transfers control to the next iteration of an enclosing labeled loop)
LNPLS1870label
Label that identifies while_loop_statement
(see "statement ::=" and "label"). CONTINUE
, EXIT
, and GOTO
statements can reference this label.
Labels improve readability, especially when LOOP
statements are nested, but only if you ensure that the label in the END
LOOP
statement matches a label at the beginning of the same LOOP
statement (the compiler does not check).
LNPLS1871In this chapter:
LNPLS1872In other chapters: