Car*_*s00 1 sql oracle plsql exception-handling
在Oracle PL/SQL中,我需要编写一个可能抛出自定义异常的存储过程,并且必须从调用此存储过程的某个匿名过程中捕获此异常(仅此一个).怎么实现呢?
自定义异常(通常称为"用户定义的异常")很容易声明:
my_own_exception exception;
Run Code Online (Sandbox Code Playgroud)
主要的是,如果要在一个过程中抛出特定异常并捕获另一个过程,则必须在两个程序的范围内声明异常.正如您指定的那样,调用(捕获)过程是一个匿名的PL/SQL块,这意味着您必须在包规范中声明异常:这可以是包含被调用过程的包或特别为保存用户定义的异常而创建的包规范.
PL/SQL文档在某种程度上涵盖了异常. 了解更多.