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:

PL/SQL While Loop
Exemplu de buclฤƒ PL/SQL While
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.

Rezumaศ›i aceastฤƒ postare cu: