Sto provando ad eseguire un cursore e voglio che completi il ciclo anche se c'è qualche eccezione.plsql/cursors gestiscono l'eccezione e ritornano al flusso di esecuzione
Quello che sto cercando di fare è "catturare" tutte le eccezioni e probabilmente registrare qualcosa o fare nulla e poi tornare al flusso. Ecco come appare il codice:
FOR line IN my_cursor
LOOP
begin
if<condition> then
GOTO pass;
else
<<do_something>>
exception
when others then
sys.dbms_output.put_line('say something');
end if;
<<pass>> null;
end
END LOOP;
Lo script non viene compilato. Probabilmente c'è un errore sintattico con l'eccezione, ma non mi risulta molto bene la semantica. Come se non fossi sicuro di poter tornare al flusso di esecuzione dopo aver gestito un'eccezione.
p.s: Il DB è 10g e non c'è CONTINUA in esso. Quindi utilizzando GOTO.
Inoltre, 'if' ha bisogno di un then' e' 'if' fine. –
thnx. Era un errore di battitura nella domanda. – codeObserver
Potresti verificare se una delle risposte proposte potrebbe essere considerata accettabile? TIA – lkuty