Объявление глобального исключения в пакете PL / SQL - PullRequest
0 голосов
/ 16 января 2012

У меня есть некоторые процедуры / функции в пакете, которые перехватывают исключение -2291 при нарушении ограничения FOREIGN KEY.

Я удалил исключение из разных процедур и объявил его в теле пакета следующим образом:

e_ouder_niet_gevonden EXCEPTION;
PRAGMA EXCEPTION_INIT(e_ouder_niet_gevonden,-2291);

Теперь, когда я использую одну из процедур в пакете, нет проблем. Однако я хотел бы добиться, чтобы ЛЮБАЯ процедура / функция могла использовать это исключение. Как бы я поступил так?

1 Ответ

5 голосов
/ 16 января 2012

РЕШЕНИЕ. Вместо того, чтобы помещать исключение в тело пакета, вам нужно указать спецификацию пакета.Если затем вы хотите использовать исключение в процедуре вне пакета, вы можете поместить это в блок EXCEPTION:

WHEN packagename.exception_name THEN

Это работает без проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...