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

Sql*plus siempre devuelve el código de salida 0?

Tienes que decirle explícitamente a sqlplus para hacer eso, en su script. Básicamente, hay dos declaraciones que puede usar:

  • WHENEVER SQLERROR EXIT SQL.SQLCODE
  • WHENEVER OSERROR EXIT

Por ejemplo:

WHENEVER SQLERROR EXIT SQL.SQLCODE
begin
  SELECT COLUMN_DOES_NOT_EXIST FROM DUAL;
END;
/

Y para errores del sistema operativo:

WHENEVER OSERROR EXIT FAILURE
START no_such_file

Para obtener más información, consulte esto y aquello.

Espero eso ayude. ¡Buena suerte!