RAISE_APPLICATION_ERROR(-20100,
'Invalid Registration'
);
SQL> CREATE OR REPLACE PROCEDURE pb IS
2 invalid_data EXCEPTION;
3 PRAGMA EXCEPTION_INIT(invalid_data, -20100);
4 v_sqlerrm VARCHAR2(2000);
5 BEGIN
6 IF TRUE THEN
7 RAISE_APPLICATION_ERROR(-20100, 'Invalid Registration');
8 END IF;
9 EXCEPTION
10 WHEN invalid_data THEN
11 v_sqlerrm := SQLERRM;
12 dbms_output.put_line(v_sqlerrm);
13 END;
14 /
过程已创建。
SQL>
SQL> SET serveroutput ON;
SQL> exec pb;
ORA-20100: Invalid Registration
PL/SQL 过程已成功完成。
- Oracle中,允许使用“RAISE_APPLICATION_ERROR”函数产生一个用户自定义的错误,使得事务进入异常处理
PROCEDURE RAISE_APPLICATION_ERROR( error_number_in IN NUMBER, error_msg_in IN VARCHAR2);
- error_number_in 之容许从 -20000 到 -20999 之间
- 在开发存储过程或者PL/Sql 时,可以根据需要随时产生 SQL错误,并在事务中使用exception语句处理指定错误号的后续工作.