Istruzione PL / SQL - EXIT
Il EXIT L'istruzione nel linguaggio di programmazione PL / SQL ha i seguenti due utilizzi:
Quando l'istruzione EXIT viene rilevata all'interno di un ciclo, il ciclo viene immediatamente terminato e il controllo del programma riprende dall'istruzione successiva che segue il ciclo.
Se stai usando cicli annidati (cioè un ciclo dentro un altro ciclo), l'istruzione EXIT interromperà l'esecuzione del ciclo più interno e inizierà a eseguire la riga di codice successiva dopo il blocco.
Sintassi
La sintassi per un'istruzione EXIT in PL / SQL è la seguente:
EXIT;
Diagramma di flusso

Esempio
DECLARE
a number(2) := 10;
BEGIN
-- while loop execution
WHILE a < 20 LOOP
dbms_output.put_line ('value of a: ' || a);
a := a + 1;
IF a > 15 THEN
-- terminate the loop using the exit statement
EXIT;
END IF;
END LOOP;
END;
/
Quando il codice precedente viene eseguito al prompt SQL, produce il seguente risultato:
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
PL/SQL procedure successfully completed.
L'istruzione EXIT WHEN
Il EXIT-WHENconsente di valutare la condizione nella clausola WHEN. Se la condizione è vera, il ciclo viene completato e il controllo passa all'istruzione immediatamente dopo END LOOP.
Di seguito sono riportati i due aspetti importanti per l'istruzione EXIT WHEN:
Fino a quando la condizione non è vera, l'istruzione EXIT-WHEN agisce come un'istruzione NULL, ad eccezione della valutazione della condizione, e non termina il ciclo.
Un'istruzione all'interno del ciclo deve modificare il valore della condizione.
Sintassi
La sintassi per un'istruzione EXIT WHEN in PL / SQL è la seguente:
EXIT WHEN condition;
L'istruzione EXIT WHEN replaces a conditional statement like if-then utilizzato con l'istruzione EXIT.
Esempio
DECLARE
a number(2) := 10;
BEGIN
-- while loop execution
WHILE a < 20 LOOP
dbms_output.put_line ('value of a: ' || a);
a := a + 1;
-- terminate the loop using the exit when statement
EXIT WHEN a > 15;
END LOOP;
END;
/
Quando il codice precedente viene eseguito al prompt SQL, produce il seguente risultato:
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
PL/SQL procedure successfully completed.