Oracle PL / SQL, kun taas silmukkaa esimerkillä

Sisällysluettelo:

Anonim

Mikä on While Loop?

WHILE-silmukka-lause toimii samalla tavalla kuin Basic-silmukka-lause, paitsi että EXIT-ehto on silmukan aivan alussa .

Se toimii kuin sisääntulon tarkistussilmukka, jossa suorituslohkoa ei edes suoriteta kerran, jos ehto ei täyty, koska poistumistapa tarkistaa ennen suorituksen osaa. Se ei vaadi avainsanaa "EXIT" nimenomaisesti poistuakseen silmukasta, koska se vahvistaa ehdon implisiittisesti silmukan joka kerta.

WHILE LOOPEND LOOP;
Syntaksi Selitys:
  • Yllä olevassa syntaksissa avainsana 'WHILE' merkitsee silmukan alkua ja 'END LOOP' silmukan loppua.
  • EXIT-ehto arvioidaan joka kerta ennen suoritusosan aloittamista.
  • Suorituslohko sisältää kaiken suoritettavan koodin.
  • Suoritusosa voi sisältää minkä tahansa suorituslausekkeen.

Esimerkki 1 : Tässä esimerkissä aiomme tulostaa numeron 1 - 4 käyttämällä WHILE-silmukka-käskyä. Tätä varten suoritamme seuraavan koodin.

DECLAREa NUMBER :=1;BEGINdbms_output.put_line('Program started');WHILE (a <= 5)LOOPdbms_output.put_line(a);a:=a+1;END LOOP;dbms_output.put_line(‘Program completed' ); END:/

Koodin selitys:

  • Koodirivi 2 : Ilmoitetaan muuttuja 'a' NUMBER-tietotyypiksi ja alustetaan se arvolla '1'.
  • Koodirivi 4 : Lausekkeen "Ohjelma aloitettu" tulostaminen.
  • Koodirivi 5: Avainsana WHILE merkitsee silmukan alkua ja tarkistaa myös, onko a: n arvo pienempi tai yhtä suuri kuin 5
  • Koodirivi 7: Tulostaa a-arvon.
  • Koodirivi 8: Lisää a-arvon arvoa +1.
  • Koodirivi 9: Avainsana END LOOP merkitsee suorituslohkon loppua.
  • Rivien 7 ja 8 koodi jatkuu, kunnes 'a' saavuttaa arvon 6, kun ehto palauttaa TOSI ja ohjaus poistuu silmukasta.
  • Koodirivi 10: Lausunnon "Ohjelma valmis" tulostaminen

Yhteenveto

Silmukka Silmukan aikana
POISTUMISEHDOT Poistu, kun tarkistusehto palauttaa epätosi
Käyttö Hyvä käyttää, kun silmukan määrää ei tunneta, ja poistuminen perustuu johonkin muuhun ehtoon.