Exception handling in PL/SQL
Note: I'm doing this code inside a Package. I've never written an PL/SQL program outside of a Package.
You can declare exception everywhere inside a PL/SQL Stored Procedure or Function.
PROCEDURE MY_PROC(V_ARG_SOMETHING IN MY_TBL.MY_FIELD%TYPE)
--SOMETHING CAUSE AN EXCEPTION HERE
EXCEPTION WHEN OTHERS THEN
/*DO YOUR EXCEPTION HANDLING CODE HERE */
END MY_PROC;
I found it useful though on some situation to wrap my exception handling code inside a BEGIN - END block
PROCEDURE MY_PROC(V_ARG_SOMETHING IN MY_TBL.MY_FIELD%TYPE)
BEGIN
--SOMETHING CAUSE AN EXCEPTION HERE
EXIT; --IF CODE FINISHES
EXCEPTION WHEN OTHERS THEN
/*DO EXCEPTION HANDLING HERE*/
END ;
EXCEPTION WHEN OTHERS THEN
/*DO YOUR EXCEPTION HANDLING CODE HERE */
END MY_PROC;
My team lead complimented me that I'm becoming an expert on this. And it felt really nice. :)