2017-02-02 6 views
0

Я пишу функцию с исключением catch и игнорированием. Я хочу поймать все исключения и просто игнорировать его. Есть ли все-таки поймать все исключения, а не индивидуально?Поймать все ошибки исключение функции psql

CREATE OR REPLACE FUNCTION ADD_TABLE_TO_ARCHIVE (a TEXT, b TEXT) 
RETURNS INTEGER AS $SUCCESS$ 
DECLARE SUCCESS INTEGER; 
BEGIN 
    SUCCESS = 0; 
    BEGIN 
     UPDATE ARCHIVE_STATUS 
     SET ***** 
     WHERE ***; 
     SUCCESS = 1; 
    EXCEPTION 
     WHEN UNIQUE_VIOLATION 
     SUCCESS = 0; 
    END; 

    RETURN SUCCESS; 
END; 
$SUCCESS$ LANGUAGE plpgsql; 

На месте уникального исключения, оно должно быть никаких исключений ...

ответ

2

Вы можете использовать EXCEPTION WHEN OTHERS пункт:

BEGIN 
    do some 
EXCEPTION WHEN OTHERS 
    handle any exception 
END; 

Без некоторого исключения А с использованием данного пункта не является хорошей идеей , Диагностика отладки и диагностики может быть ужасной при использовании этого шаблона. Это сильный признак (иногда необходимый), но опасный!

 Смежные вопросы

  • Нет связанных вопросов^_^