在PL / SQL包中声明全局异常

时间:2012-01-15 21:27:18

标签: sql oracle exception plsql package

我在包中有一些过程/函数,当违反FOREIGN KEY约束时会捕获-2291异常。

我从不同的过程中删除了异常,并在包体中声明它,如下所示:

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

现在,当我使用包中的一个过程时,没有问题。但是,我想要实现的是任何过程/函数都可以使用该异常。我该怎么做呢?

1 个答案:

答案 0 :(得分:5)

解: 您需要输入包规范,而不是将异常放在包体中。如果您想在包外部的过程中使用异常,可以将它放在EXCEPTION块中:

WHEN packagename.exception_name THEN

这没有问题。