BEGIN
DECLARE
count_loop NUMBER DEFAULT 0; -- counter coming from some other SQL query...
progressive_number NUMBER DEFAULT 0;
copy_count_loop NUMBER DEFAULT 0;
BEGIN
-- calculus generating the COUNT_LOOP value > 0.
copy_count_loop := count_loop;
FOR progressive_number IN 1 .. count_loop
LOOP
-- do your operations using copy_count_loop
END LOOP;
END;
END;
/
Не очень понятно, что бы вы хотели сделать с COUNT_LOOP.
Я сделал копию счетчика перед входом в цикл FOR, чтобы вы могли использовать COPY_COUNT_LOOP внутри цикла FOR, не затрагивая ни переменную progress_number, ни переменную count_loop.