While Einschleifen Oracle PL/SQL mit Beispiel
Was ist eine PL/SQL-While-Schleife?
While-Schleife in PL/SQL funktioniert ähnlich wie die grundlegende Schleifenanweisung, außer dass die EXIT-Bedingung ganz am Anfang der Schleife steht. Es funktioniert wie eine Eingangsprüfschleife, bei der der Ausführungsblock nur dann ausgeführt wird, wenn die Bedingung erfüllt ist, da die Ausgangsbedingung vor der Ausführung überprüft wird.
Zum Beenden der Schleife ist das Schlüsselwort „EXIT“ nicht explizit erforderlich, da die Bedingung jedes Mal implizit validiert wird.
PL/SQL While-Schleifensyntax
WHILE <EXIT condition> LOOP <execution block starts> . . . <execution_block_ends> END LOOP;
- In der obigen Syntax markiert das Schlüsselwort „WHILE“ den Anfang der Schleife und „END LOOP“ das Ende der Schleife.
- Die EXIT-Bedingung wird jedes Mal ausgewertet, bevor der Ausführungsteil mit der Ausführung beginnt.
- Der Ausführungsblock enthält den gesamten Code, der ausgeführt werden muss.
- Der Ausführungsteil kann eine beliebige Ausführungsanweisung enthalten.
Beispiel von Oracle PL/SQL While-Schleife
In diesem Beispiel drucken wir Zahlen von 1 bis 5 mithilfe der WHILE-Schleifenanweisung. Dazu führen wir den folgenden Code aus:
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-Erklärung:
- Codezeile 2: Deklarieren Sie die Variable „a“ als Datentyp „NUMBER“ und initialisieren Sie sie mit dem Wert „1“.
- Codezeile 4: Ausdruck der Aussage „Programm gestartet“.
- Codezeile 5: Das Schlüsselwort „WHILE“ markiert den Anfang der Schleife und prüft außerdem, ob der Wert von „a“ kleiner oder gleich 5 ist
- Codezeile 7: Gibt den Wert von 'a' aus.
- Codezeile 8: Erhöht den Wert von „a“ um +1.
- Codezeile 9: Das Schlüsselwort „END LOOP“ markiert das Ende des Ausführungsblocks.
- Der Code aus Zeile 7 und Zeile 8 wird so lange ausgeführt, bis „a“ den Wert 6 erreicht, da die Bedingung TRUE zurückgibt und die Steuerung den Wert verlässt Schleife.
- Codezeile 10: Ausdrucken der Aussage „Programm abgeschlossen“
Zusammenfassung
Loop | While-Schleife |
---|---|
Abbruchkriterium | Beenden Sie den Vorgang, wenn die Prüfbedingung „Falsch“ zurückgibt |
Anwendungsbereich | Gut zu verwenden, wenn die Schleifenanzahl unbekannt ist und der Ausstieg auf einer anderen Bedingung basiert. |