Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Sub block in exception section

SQL> SQL> DECLARE   2   3      num_a NUMBER := 6;   4      num_b NUMBER;   5   6  BEGIN   7       num_b := 0;   8       num_a := num_a / num_b;   9       num_b := 7;  10       dbms_output.put_line(' Value of num_b ' || num_b);  11  EXCEPTION  12       WHEN ZERO_DIVIDE THEN  13      DECLARE  14                 err_num NUMBER := SQLCODE;  15                 err_msg VARCHAR2(512) := SQLERRM;  16      BEGIN  17                dbms_output.put_line('ORA Error Number ' || err_num );  18                dbms_output.put_line('ORA Error message ' || err_msg);  19                dbms_output.put_line(' Value of num_a ' || num_a);  20                dbms_output.put_line(' Value of num_b ' || num_b);  21      END;  22  END;  23  / ORA Error Number -1476 ORA Error message ORA-01476: divisor is equal to zero Value of num_a 6 Value of num_b 0 PL/SQL procedure successfully completed.