sql >> Base de Datos >  >> RDS >> Oracle

Oracle PL/SQL:generar una excepción definida por el usuario con SQLERRM personalizado

Sí. Solo tienes que usar el RAISE_APPLICATION_ERROR función. Si también desea nombrar su excepción, deberá usar EXCEPTION_INIT pragma para asociar el número de error a la excepción nombrada. Algo como

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.