Я пытаюсь использовать курсорный цикл в MYSQL, но он не работает. Я по сути скопировал пример из http://dev.mysql.com/doc/refman/5.0/en/cursors.html,, за исключением того, что я использую функцию вместо процедуры. Это имеет значение?
Когда я пытаюсь запустить функцию - выберите xxx () из двойного - я получаю сообщение об ошибке: неизвестный столбец «выполнено» в «списке полей». Что делать?
delimiter $$
create function xxx()
returns int deterministic
begin
DECLARE a INT;
DECLARE cur1 CURSOR FOR SELECT id FROM my_table;
OPEN cur1;
read_loop: LOOP
FETCH cur1 INTO a;
IF done THEN
LEAVE read_loop;
END IF;
END LOOP;
CLOSE cur1;
return 1;
end$$
delimiter ;