Oracle PL / SQL UNDER LOOP med eksempel

Indholdsfortegnelse:

Anonim

Hvad er While Loop?

WHILE loop-sætning fungerer svarende til Basic-loop-sætningen, bortset fra at EXIT-betingelsen er i begyndelsen af ​​loop .

Det fungerer som en indgangskontrolsløjfe, hvor eksekveringsblok ikke engang udføres en gang, hvis betingelsen ikke er opfyldt, da udgangsbetingelsen kontrolleres før udførelsesdel. Det kræver ikke nøgleordet 'EXIT' eksplicit at forlade sløjfen, da det validerer betingelsen implicit hver gang i sløjfen.

WHILE LOOPEND LOOP;
Syntaks Forklaring:
  • I ovenstående syntaks markerer nøgleordet 'WHILE' begyndelsen på loop og 'END LOOP' markerer slutningen af ​​loop.
  • EXIT-tilstand evalueres hver gang, før eksekveringsdelen begynder at blive udført.
  • Eksekveringsblokken indeholder al den kode, der skal udføres.
  • Eksekveringsdelen kan indeholde enhver eksekveringserklæring.

Eksempel 1 : I dette eksempel skal vi udskrive nummer fra 1 til 4 ved hjælp af WHILE loop-sætning. Til det udfører vi følgende kode.

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:/

Kode Forklaring:

  • Kodelinje 2 : Erklærer variablen 'a' som 'NUMBER' datatype og initialiserer den med værdien '1'.
  • Kodelinje 4 : Udskrivning af udsagnet "Program startet".
  • Kodelinje 5: Nøgleord 'WHILE' markerer begyndelsen af ​​sløjfen, og det kontrollerer også, om værdien af ​​'a' er mindre end eller lig med 5
  • Kodelinje 7: Udskriver værdien af ​​'a'.
  • Kodelinje 8: Forøger værdien af ​​'a' med +1.
  • Kodelinje 9: Nøgleord 'END LOOP' markerer afslutningen på eksekveringsblokken.
  • Koden fra linje 7 og linje 8 fortsætter med at udføre, indtil 'a' når værdien 6, da tilstanden returnerer SAND, og ​​kontrollen EXIT fra sløjfen.
  • Kodelinje 10: Udskrivning af udsagnet "Program afsluttet"

Resumé

Sløjfe MED HVIS Loop
UDGANGskriterier Afslut, når kontrolbetingelsen returnerer falsk
Anvendelse Godt at bruge, når antallet af sløjfer er ukendt, og exit er baseret på en anden tilstand.