Zatímco Loop in Oracle PL/SQL s příkladem

Co je PL/SQL While Loop?

Zatímco Loop v PL/SQL funguje podobně jako příkaz základní smyčky, až na to, že podmínka EXIT je na samém začátku smyčky. Funguje to jako smyčka kontroly vstupu, kde se prováděcí blok provede pouze v případě, že je splněna podmínka, protože podmínka ukončení se kontroluje před provedením.

K opuštění smyčky explicitně nevyžaduje klíčové slovo 'EXIT', protože pokaždé implicitně ověřuje podmínku.

Syntaxe smyčky PL/SQL

WHILE <EXIT condition>
 LOOP
<execution block starts>
.
.
.
<execution_block_ends>
 END LOOP;
  • Ve výše uvedené syntaxi klíčové slovo „WHILE“ označuje začátek smyčky a „END LOOP“ označuje konec smyčky.
  • Podmínka EXIT je vyhodnocena vždy před zahájením provádění prováděcí části.
  • Prováděcí blok obsahuje veškerý kód, který je třeba provést.
  • Prováděcí část může obsahovat libovolný příkaz provedení.

Příklad Oracle PL/SQL While Loop

V tomto příkladu vytiskneme číslo od 1 do 5 pomocí příkazu smyčky WHILE. Za tímto účelem spustíme následující kód:

PL/SQL While Loop
Příklad smyčky PL/SQL
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:
/

Vysvětlení kódu:

  • Řádek kódu 2: Deklaruje proměnnou 'a' jako datový typ 'NUMBER' a inicializuje ji hodnotou '1'.
  • Řádek kódu 4: Tisk prohlášení „Program spuštěn“.
  • Řádek kódu 5: Klíčové slovo „WHILE“ označuje začátek cyklu a také kontroluje, zda je hodnota „a“ menší nebo rovna 5
  • Řádek kódu 7: Vytiskne hodnotu 'a'.
  • Řádek kódu 8: Zvýší hodnotu „a“ o +1.
  • Řádek kódu 9: Klíčové slovo 'END LOOP' označuje konec bloku provádění.
  • Kód z řádku 7 a řádku 8 se bude nadále provádět, dokud „a“ nedosáhne hodnoty 6, protože podmínka vrátí hodnotu TRUE a ovládací prvek opustí smyčka.
  • Řádek kódu 10: Tisk prohlášení „Program dokončen“

Shrnutí

Smyčka WHILE Loop
EXIT Kritéria Ukončete, když podmínka kontroly vrátí hodnotu false
Používání Vhodné použít, když je počet smyček neznámý a ukončení je založeno na nějaké jiné podmínce.