Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Raise different exception depends on value input

SQL> SQL> CREATE OR REPLACE PROCEDURE RaiseIt(p_Exception IN NUMBER) AS   2    e_MyException EXCEPTION;   3  BEGIN   4    IF p_Exception = 0 THEN   5      NULL;   6    ELSIF p_Exception < 0 THEN   7      RAISE e_MyException;   8    ELSIF p_Exception = 1001 THEN   9      RAISE INVALID_CURSOR;  10    ELSIF p_Exception = 1403 THEN  11      RAISE NO_DATA_FOUND;  12    ELSIF p_Exception = 6502 THEN  13      RAISE VALUE_ERROR;  14    ELSE  15      RAISE_APPLICATION_ERROR(-20001, 'Exception ' || p_Exception);  16    END IF;  17  END RaiseIt;  18  / Procedure created. SQL> show errors No errors. SQL>