Mysql (версия 5.7) курсор не работает. Я пытался много раз и проверил онлайн, не мог найти, что не так.
Он корректно просматривает столько записей в таблице валют. Но когда я пытаюсь прочитать из курсора, он возвращает только ноль, а не фактические значения из валюты таблицы. В таблице валют есть данные.
DROP PROCEDURE IF EXISTS proc2;
CREATE PROCEDURE proc2()
BEGIN
DECLARE finished INTEGER DEFAULT 0;
DECLARE code VARCHAR(255);
DECLARE myCursor CURSOR FOR SELECT code FROM currency;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1;
OPEN myCursor;
delete from dummy;
read_loop: LOOP
FETCH myCursor INTO code;
IF finished = 1 THEN
LEAVE read_loop;
END IF;
insert into dummy(name) values(code);
END LOOP read_loop;
CLOSE myCursor;
End;