Обсуждение: обработка ошибок в процедуре plpgsql

Поиск
Список
Период
Сортировка

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

От
Serik
Дата:
Добрый день !

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

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

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

Спасибо!