日期:2014-05-16  浏览次数:20434 次

Oracle 自定义异常的实现

DECLARE
? SALARY SCOTT.EMP.SAL%TYPE;
? SAL_EXCEPTION EXCEPTION;
BEGIN
? SELECT SAL INTO SALARY FROM EMP WHERE EMPNO =
7369;
? IF SALARY -
1000 < 0
? THEN
???? RAISE SAL_EXCEPTION;
? END IF;
EXCEPTION
? WHEN SAL_EXCEPTION THEN DBMS_OUTPUT.put_line(
'SALARY < 1000'
);
END;

?

?

--测试表为Scott下的EMP表

?

下面是两个系统异常(不用出发 可以直接使用,但是需要先定义)

?

NO_DATA_FOUND? 没有数据被找到

TOO_MANY_ROWS? 数据太多

?