ITERATE statement
The ITERATE statement stops the current iteration of the
containing WHILE, REPEAT, LOOP, or BEGIN statement identified by Label.
The containing statement evaluates its loop condition
(if any), and either starts the next iteration or stops looping, as
the condition dictates.
Syntax
>>-ITERATE--Label----------------------------------------------><
Example
In the following
example, the loop iterates four times; that is the line identified
by the comment Some statements 1 is passed through four times. However,
the line identified by the comment Some statements 2 is passed through
twice only because of the action of the IF and ITERATE statements.
The ITERATE statement does
not bypass testing the loop condition.
Take particular care that the action of the ITERATE does not bypass
the logic that makes the loop advance and eventually terminate. The
loop count is incremented at the start of the loop in this example:
DECLARE i INTEGER;
SET i = 0;
X : REPEAT
SET i = i + 1;
-- Some statements 1
IF i IN(2, 3) THEN
ITERATE X;
END IF;
-- Some statements 2
UNTIL
i>= 4
END REPEAT X;
ITERATE statements do not have to be directly contained
by their labelled statement, making ITERATE statements particularly
powerful.