Tak. Musisz tylko użyć RAISE_APPLICATION_ERROR
funkcjonować. Jeśli chcesz również nazwać swój wyjątek, musisz użyć EXCEPTION_INIT
pragma w celu powiązania numeru błędu z nazwanym wyjątkiem. Coś jak
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.