Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Sql*plus gibt immer Exit-Code 0 zurück?

Sie müssen sqlplus explizit mitteilen um das zu tun, in Ihrem Skript. Grundsätzlich gibt es zwei Anweisungen, die Sie verwenden können:

  • WHENEVER SQLERROR EXIT SQL.SQLCODE
  • WHENEVER OSERROR EXIT

Zum Beispiel:

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

Und für OS-Fehler:

WHENEVER OSERROR EXIT FAILURE
START no_such_file

Weitere Informationen finden Sie unter dies und das.

Ich hoffe es hilft. Viel Glück!