Oracle
 sql >> Database >  >> RDS >> Oracle

Oracle PL/SQL:solleva eccezioni definite dall'utente con SQLERRM personalizzato

Sì. Devi solo usare il RAISE_APPLICATION_ERROR funzione. Se vuoi anche nominare la tua eccezione, dovrai usare EXCEPTION_INIT pragma per associare il numero di errore all'eccezione denominata. Qualcosa come

SQL> ed
Wrote file afiedt.buf

  1  declare
  2    ex_custom EXCEPTION;
  3    PRAGMA EXCEPTION_INIT( ex_custom, -20001 );
  4  begin
  5    raise_application_error( -20001, 'This is a custom error' );
  6  exception
  7    when ex_custom
  8    then
  9      dbms_output.put_line( sqlerrm );
 10* end;
SQL> /
ORA-20001: This is a custom error

PL/SQL procedure successfully completed.