Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

This example illustrates the PLS-483 error

SQL> CREATE TABLE log_table(   2    code     VARCHAR2(100),   3    message     VARCHAR2(100),   4    info     VARCHAR2(100)); Table created. SQL> SQL> SQL> DECLARE   2    myException1 EXCEPTION;   3    myException2 EXCEPTION;   4  BEGIN   5    RAISE myException1;   6  EXCEPTION   7    WHEN myException2 THEN   8      INSERT INTO log_table (info)VALUES ('Handler 1 executed!');   9    WHEN myException1 THEN  10      INSERT INTO log_table (info)VALUES ('Handler 3 executed!');  11    WHEN myException1 OR myException2 THEN  12      INSERT INTO log_table (info)VALUES ('Handler 4 executed!');  13  END;  14  /   WHEN myException1 OR myException2 THEN   * ERROR at line 11: ORA-04045: errors during recompilation/revalidation of RNTSOFT.LOG_ERRORS ORA-01031: insufficient privileges ORA-06550: line 11, column 3: PLS-00483: exception 'MYEXCEPTION2' may appear in at most one exception handler in this block ORA-06550: line 0, column 0: PL/SQL: Compilation unit analysis terminated SQL> SQL> drop table log_table; Table dropped.