A PL/SQL for loop akkor használatos, amikor egy utasításkészletet előre meghatározott számú alkalommal szeretne végrehajtani. A ciklus a kezdő és a záró egész értékek között iterálódik. A számláló mindig 1-gyel növekszik, és amint a számláló eléri az utolsó egész szám értékét, a ciklus véget ér.
A for ciklus szintaxisa:
FOR counter IN initial_value .. final_value LOOP LOOP statements; END LOOP;
- kezdeti_érték : Kezdő egész érték
- final_value : Vége egész szám
PL/SQL for Loop 1. példa
Lássunk egy egyszerű példát a PL/SQL FOR ciklusra.
BEGIN FOR k IN 1..10 LOOP -- note that k was not declared DBMS_OUTPUT.PUT_LINE(k); END LOOP; END;
A fenti kód végrehajtása után a következő eredményt kapja:
1 2 3 4 5 6 7 8 9 10
Megjegyzés: A PL/SQL WHILE ciklus használatakor ezeket a lépéseket kell követnie.
- A számlálóváltozót nem kell explicit módon deklarálnia, mert az implicit módon van deklarálva a deklarációs részben.
- A számláló változó 1-gyel növekszik, és nem kell kifejezetten növelni.
- Használhat EXIT WHEN és EXIT utasításokat a FOR Loopsban, de ez ritkán történik meg.
PL/SQL for Loop 2. példa
DECLARE VAR1 NUMBER; BEGIN VAR1:=10; FOR VAR2 IN 1..10 LOOP DBMS_OUTPUT.PUT_LINE (VAR1*VAR2); END LOOP; END;
Kimenet:
10 20 30 40 50 60 70 80 90 100
PL/SQL for Loop REVERSE 3. példa
Lássunk egy példát a PL/SQL for ciklusra, ahol a REVERSE kulcsszót használjuk.
DECLARE VAR1 NUMBER; BEGIN VAR1:=10; FOR VAR2 IN REVERSE 1..10 LOOP DBMS_OUTPUT.PUT_LINE (VAR1*VAR2); END LOOP; END;
Kimenet:
100 90 80 70 60 50 40 30 20 10