Smyčka PL/SQL for se používá, když chcete provést sadu příkazů po předem určený počet opakování. Smyčka se iteruje mezi počáteční a koncovou celočíselnou hodnotou. Čítač se vždy zvýší o 1 a jakmile čítač dosáhne hodnoty end integer, smyčka skončí.
Syntaxe cyklu for:
FOR counter IN initial_value .. final_value LOOP LOOP statements; END LOOP;
- počáteční_hodnota: Počáteční celočíselná hodnota
- final_value : Koncová celočíselná hodnota
Příklad PL/SQL pro smyčku 1
Podívejme se na jednoduchý příklad smyčky PL/SQL FOR.
BEGIN FOR k IN 1..10 LOOP -- note that k was not declared DBMS_OUTPUT.PUT_LINE(k); END LOOP; END;
Po provedení výše uvedeného kódu získáte následující výsledek:
1 2 3 4 5 6 7 8 9 10
Poznámka: Při používání PL/SQL WHILE Loop musíte postupovat podle těchto kroků.
- Proměnnou čítače nemusíte deklarovat explicitně, protože je deklarována implicitně v sekci deklarace.
- Proměnná čítače je zvýšena o 1 a není nutné ji explicitně zvyšovat.
- V smyčkách FOR můžete použít příkazy EXIT WHEN a EXIT, ale to se nedělá často.
Příklad PL/SQL pro smyčku 2
DECLARE VAR1 NUMBER; BEGIN VAR1:=10; FOR VAR2 IN 1..10 LOOP DBMS_OUTPUT.PUT_LINE (VAR1*VAR2); END LOOP; END;
Výstup:
int řetězec
10 20 30 40 50 60 70 80 90 100
PL/SQL pro smyčku REVERSE Příklad 3
Podívejme se na příklad smyčky PL/SQL for, kde používáme klíčové slovo REVERSE.
DECLARE VAR1 NUMBER; BEGIN VAR1:=10; FOR VAR2 IN REVERSE 1..10 LOOP DBMS_OUTPUT.PUT_LINE (VAR1*VAR2); END LOOP; END;
Výstup:
100 90 80 70 60 50 40 30 20 10