SQLSTATE
PSQL
SQLSTATE
CHAR(5)
В блоках обработки ошибок WHEN … DO
контекстная переменная SQLSTATE
переменная содержит 5 символов SQL-2003 — совместимого кода состояния, переданного оператором, вызвавшим ошибку.Вне обработчиков ошибок SQLSTATE
всегда равен '00000', а вне PSQL не существует вообще.
Note
|
|
SQLSTATE
WHEN ANY DO
BEGIN
MSG = CASE SQLSTATE
WHEN '22003' THEN
'Число вышло за пределы диапазона!'
WHEN '22012' THEN
'Деление на ноль!'
WHEN '23000' THEN
'Нарушение ограничения целостности!'
ELSE 'Ошибок нет! SQLSTATE = ' || SQLSTATE;
END;
EXCEPTION EX_CUSTOM MSG;
END