LEAVE
-Beispiele
-
Eine Schleife verlassen, wenn ein Fehler beim Einfügen in die
NUMBERS
-Tabelle auftritt.Der Code wird ab der ZeileC = 0
weiter ausgeführt.... WHILE (B < 10) DO BEGIN INSERT INTO NUMBERS(B) VALUES (:B); B = B + 1; WHEN ANY DO BEGIN EXECUTE PROCEDURE LOG_ERROR ( CURRENT_TIMESTAMP, 'ERROR IN B LOOP'); LEAVE; END END C = 0; ...
-
Ein Beispiel für die Verwendung von Labels in der
LEAVE
-Anweisung.LEAVE LOOPA
beendet die äußere Schleife undLEAVE LOOPB
beendet die innere Schleife.Beachten Sie, dass die einfache AnweisungLEAVE
ausreichen würde, um die innere Schleife zu beenden.... STMT1 = 'SELECT NAME FROM FARMS'; LOOPA: FOR EXECUTE STATEMENT :STMT1 INTO :FARM DO BEGIN STMT2 = 'SELECT NAME ' || 'FROM ANIMALS WHERE FARM = '''; LOOPB: FOR EXECUTE STATEMENT :STMT2 || :FARM || '''' INTO :ANIMAL DO BEGIN IF (ANIMAL = 'FLUFFY') THEN LEAVE LOOPB; ELSE IF (ANIMAL = FARM) THEN LEAVE LOOPA; ELSE SUSPEND; END END ...