Kuigi Loop sisse Oracle PL/SQL koos näitega

Mis on PL/SQL While Loop?

Kuigi Loop PL/SQL-is töötab sarnaselt tsükli põhilausega, välja arvatud tingimus EXIT on tsükli alguses. See toimib nagu sisenemise kontrollimise tsükkel, kus täitmisplokk käivitatakse ainult siis, kui tingimus on täidetud, kuna väljumise tingimust kontrollitakse enne täitmist.

See ei nõua tsüklist väljumiseks sõnaselgelt märksõna 'EXIT', kuna see kinnitab tingimuse iga kord kaudselt.

PL/SQL tsükli süntaks

WHILE <EXIT condition>
 LOOP
<execution block starts>
.
.
.
<execution_block_ends>
 END LOOP;
  • Ülaltoodud süntaksis tähistab märksõna "WHILE" tsükli algust ja "END LOOP" tsükli lõppu.
  • VÄLJUmise tingimust hinnatakse iga kord enne täitmisosa käivitamist.
  • Täitmisplokk sisaldab kogu koodi, mis tuleb käivitada.
  • Täiteosa võib sisaldada mis tahes täitmislauset.

Näide Oracle PL/SQL While Loop

Selles näites trükime arvu vahemikus 1 kuni 5, kasutades WHILE tsükli lauset. Selleks käivitame järgmise koodi:

PL/SQL While Loop
PL/SQL While Loop näide
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:
/

Koodi selgitus:

  • Koodirida 2: muutuja 'a' deklareerimine andmetüübiks 'NUMBER' ja selle lähtestamine väärtusega '1'.
  • Koodirida 4: Avalduse “Programm käivitatud” trükkimine.
  • Koodirida 5: Märksõna „WHILE” tähistab tsükli algust ja kontrollib ka seda, kas „a” väärtus on väiksem kui 5 või sellega võrdne
  • Koodirida 7: Prindib 'a' väärtuse.
  • Koodirida 8: Suurendab 'a' väärtust +1 võrra.
  • Koodirida 9: Märksõna 'END LOOP' tähistab täitmisploki lõppu.
  • Kood ridadelt 7 ja 8 jätkab täitmist, kuni 'a' jõuab väärtuseni 6, kuna tingimus tagastab väärtuse TRUE ja juhtelement EXIT silmus.
  • Koodirida 10: Teate "Programm lõpetatud" trükkimine

kokkuvõte

Silmus WHILE Loop
VÄLJUMISkriteeriumid Väljuge, kui kontrolltingimus tagastab vale
Kasutus Hea kasutada, kui tsüklite arv on teadmata ja väljumine põhineb mõnel muul tingimusel.