LINUX.ORG.RU

PostgreSQL: обработка ошибок в процедуре plpgsql


0

0

Добрый день !

есть процедура на plpgsql,
в ней делается что-то с БД,
при этом может возникнуть ошибка (нет прав, не
уникальное значение и т.д.)
и PG отменяет всю транзакцию и начинает ругаться.
Как это отработать самому ?
Или как получить код ошибки, минуя конструкцию

begin
ret := x / 0;
EXCEPTION
when division_by_zero then raise info 'Error
!'; return 0;
when connection_failure then return 1;
end;

Кодов ошибок может быть очень много, как не перечилять
их все ?

Спасибо!


Ответ на: комментарий от anonymous

1) а разве можно делать в процедуре Savepoint ? 2) а чем он поможет, надо отловить exception, иначе PG отменяет всю транзакцию

Serik
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.