While Loop in Oracle PL/SQL cu Exemplu
Ce este PL/SQL While Loop?
รn timp ce Loop รฎn PL/SQL funcศioneazฤ similar cu instrucศiunea buclฤ de bazฤ, cu excepศia faptului cฤ condiศia EXIT este chiar la รฎnceputul buclei. Funcศioneazฤ ca o buclฤ de verificare a intrฤrii รฎn care blocul de execuศie se va executa numai dacฤ condiศia este รฎndeplinitฤ, deoarece condiศia de ieศire este verificatฤ รฎnainte de execuศie.
Nu necesitฤ รฎn mod explicit cuvรขntul cheie โEXITโ pentru a ieศi din buclฤ, deoarece valideazฤ condiศia implicit de fiecare datฤ.
Sintaxa PL/SQL While Loop
WHILE <EXIT condition> LOOP <execution block starts> . . . <execution_block_ends> END LOOP;
- รn sintaxa de mai sus, cuvรขntul cheie โWHILEโ marcheazฤ รฎnceputul buclei ศi โEND LOOPโ marcheazฤ sfรขrศitul buclei.
- Condiศia EXIT este evaluatฤ de fiecare datฤ รฎnainte ca partea de execuศie sฤ รฎnceapฤ execuศia.
- Blocul de execuศie conศine tot codul care trebuie executat.
- Partea de execuศie poate conศine orice instrucศiune de execuศie.
Exemplu de Oracle PL/SQL While Loop
รn acest exemplu, vom tipฤri numฤrul de la 1 la 5 folosind instrucศiunea buclฤ WHILE. Pentru asta, vom executa urmฤtorul cod:

DECLARE
a NUMBER :=1;
BEGIN
dbms_output.put_line('Program started');
WHILE (a <= 5)
LOOP
dbms_output.put_line(a);
a:=a+1;
END LOOP;
dbms_output.put_line(โProgram completed' );
END:
/
Code Explicaลฃie:
- Code line 2: Declararea variabilei โaโ ca tip de date โNUMฤRโ ศi iniศializarea acesteia cu valoarea โ1โ.
- Code line 4: Se imprimฤ declaraศia โProgramul รฎnceputโ.
- Code linia 5: Cuvรขntul cheie โWHILEโ marcheazฤ รฎnceputul buclei ศi, de asemenea, verificฤ dacฤ valoarea lui โaโ este mai micฤ sau egalฤ cu 5
- Code linia 7: Imprimฤ valoarea lui โaโ.
- Code linia 8: Creศte valoarea lui โaโ cu +1.
- Code linia 9: Cuvรขntul cheie โEND LOOPโ marcheazฤ sfรขrศitul blocului de execuศie.
- Codul de la linia 7 ศi linia 8 va continua sฤ se execute pรขnฤ cรขnd โaโ ajunge la valoarea 6, deoarece condiศia va returna TRUE, iar controlul va IEศI din buclฤ.
- Code linia 10: Tipฤrirea declaraศiei โProgram finalizatโ
Rezumat
| Buclฤ | WHILE Loop |
|---|---|
| Criterii EXIT | Ieศiศi cรขnd condiศia de verificare revine false |
| Folosire | Bun de utilizat atunci cรขnd numฤrul de bucle este necunoscut, iar ieศirea se bazeazฤ pe o altฤ condiศie. |
