The REPEAT statement executes a statement or group of statements until a search condition is true.
Syntax
.-------------------------------.
V |
>>-+---------+--REPEAT-------SQL-procedure-statement--;---+----->
'-label:--'
>----UNTIL--search-condition---END REPEAT----+--------+--------><
'-label--'
Description
Examples
A REPEAT statement fetches rows from a table until the not_found condition handler is invoked.
CREATE PROCEDURE REPEAT_STMT(OUT counter INTEGER)
LANGUAGE SQL
BEGIN
DECLARE v_counter INTEGER DEFAULT 0;
DECLARE v_firstnme VARCHAR(12);
DECLARE v_midinit CHAR(1);
DECLARE v_lastname VARCHAR(15);
DECLARE at_end SMALLINT DEFAULT 0;
DECLARE not_found CONDITION FOR SQLSTATE '02000';
DECLARE c1 CURSOR FOR
SELECT firstnme, midinit, lastname
FROM employee;
DECLARE CONTINUE HANDLER FOR not_found
SET at_end = 1;
OPEN c1;
fetch_loop:
REPEAT
FETCH c1 INTO v_firstnme, v_midinit, v_lastname;
SET v_counter = v_counter + 1;
UNTIL at_end > 0
END REPEAT fetch_loop;
SET counter = v_counter;
CLOSE c1;
END