Slučka PL/SQL for sa používa, keď chcete vykonať sadu príkazov vopred určený počet krát. Cyklus sa iteruje medzi počiatočnými a koncovými celočíselnými hodnotami. Počítadlo sa vždy zvýši o 1 a keď počítadlo dosiahne hodnotu koncového celého čísla, cyklus sa skončí.
Syntax cyklu for:
FOR counter IN initial_value .. final_value LOOP LOOP statements; END LOOP;
- počiatočná_hodnota : Počiatočná celočíselná hodnota
- konečná_hodnota : Koncová celočíselná hodnota
Príklad PL/SQL pre slučku 1
Pozrime sa na jednoduchý príklad sluč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 vykonaní vyššie uvedeného kódu získate nasledujúci výsledok:
1 2 3 4 5 6 7 8 9 10
Poznámka: Pri používaní PL/SQL WHILE Loop musíte postupovať podľa týchto krokov.
- Premennú počítadla nemusíte explicitne deklarovať, pretože je deklarovaná implicitne v sekcii deklarácie.
- Premenná počítadla sa zvýši o 1 a nie je potrebné ju explicitne zvyšovať.
- Môžete použiť príkazy EXIT WHEN a EXIT v slučkách FOR, ale nerobí sa to často.
Príklad PL/SQL pre slučku 2
DECLARE VAR1 NUMBER; BEGIN VAR1:=10; FOR VAR2 IN 1..10 LOOP DBMS_OUTPUT.PUT_LINE (VAR1*VAR2); END LOOP; END;
Výkon:
10 20 30 40 50 60 70 80 90 100
PL/SQL pre slučku REVERSE Príklad 3
Pozrime sa na príklad cyklu PL/SQL for, kde používame kľúč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ýkon:
100 90 80 70 60 50 40 30 20 10