2011-12-31 4 views
1

В Oracle PL/SQL мне нужно написать хранимую процедуру, которая может генерировать настраиваемое исключение, и это исключение должно быть уловлено (только это) из какой-либо анонимной процедуры, вызывающей эту хранимую процедуру. Как это сделать?Обработка исключений из хранимой процедуры

+1

ответить на вопрос «домашнее задание» :) –

+0

[Oracle Docs] (http://docs.oracle.com/cd/B10501_01/appdev.920/a96624/07_errs.htm) - это хорошее место для начала, если вы необходимость. Как только вы посмотрели, и что, и боролись с ним на некоторое время, где у вас проблемы. Я уверен, что тогда вы получите хорошую помощь. – xQbert

ответ

5

Пользовательские исключения (чаще называемые «определенные пользователем исключения») достаточно легко объявить:

my_own_exception exception; 

Главное в том, что если вы хотите, чтобы бросить конкретное исключение в одной процедуре и поймать в другом вас должен объявить исключение где-нибудь, что доступно для обеих программ. Поскольку вы указываете, что процедура вызова (catching) является анонимным блоком PL/SQL, это означает, что вы должны объявить исключение в спецификации пакета: это может быть пакет, который содержит вызванную процедуру или спецификацию пакета, специально созданную для хранения пользовательских исключений ,

Документация PL/SQL охватывает исключения на некоторой глубине. Find out more.

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