SQLSTATE
PSQL
CHAR(5)
SQLSTATE
In einer “WHEN … DO
”-Fehlerbehandlung enthält die Kontextvariable SQLSTATE
den 5-stelligen, SQL-2003-konformen Statuscode, der sich aus der Anweisung ergibt, die den Fehler ausgelöst hat.Außerhalb von Fehlerhandlern ist SQLSTATE
immer '00000'
.Außerhalb von PSQL ist es überhaupt nicht verfügbar.
Note
|
|
when any
do
begin
Msg = case sqlstate
when '22003' then 'Numeric value out of range.'
when '22012' then 'Division by zero.'
when '23000' then 'Integrity constraint violation.'
else 'Something bad happened! SQLSTATE = ' || sqlstate
end;
exception ex_custom Msg;
end