注重:-01445 因为PRAGMA EXCEPTION_INIT命令把这个变量(-01455)连接到
这个ORACLE错误,该语句的语法如下:
| PRAGMA EXCEPTION_INIT(exception_name, error_number); |
其中error_number是负数,因为错误号被认为负数,当定义错误时记住使用负号
1.4.4 自定义异常
异常不一定必须是oracle返回的系统错误,用户可以在自己的应用程序中创
建可触发及可处理的自定义异常
| DECLARE SALARY_CODE VARCHAR2(1); INVALID_SALARY_CODE EXCEPTION; BEGIN SALARY_CODE:='X'; IF SALARY_CODE NOT IN('A', 'B', 'C') THEN RAISE INVALID_SALARY_CODE; END IF; EXCEPTION WHEN INVALID_SALARY_CODE THEN DBMS_OUTPUT.PUT_LINE('INVALID SALARY CODE'); END; |
1.5 在PL/SQL中单条记录的查询
在PL/SQL内,有时在没有定义显式光标的情况下需要查询单条记录,并把记录的数据赋给变量。
| DECLARE ln_dno NUMBER; lvs_dname VARCHAR2(40); BEGIN SELECT DEPT_NO,DEPT_NAME INTO ln_dno,lvs_dname FROM dept WHERE DEPT_NO=1; DBMS_OUTPUT.PUT_LINE(TO_CHAR(ln_dno)||'.'||lvs_dname); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('NO DATA_FOUND'); WHEN TOO_MANY_ROWS THEN DBMS_OUTPUT.PUT_LINE('TOO_MANY_ROWS'); END; |
1.6 用光标查询多条记录
光标(CURSOR)是指向一个称为上下文相关区的区域的指针,这个区域在服务器的处理过程全局区(PGA)内,当服务器上执行了一个查询后,查询返回的记录集存放在上下文相关区,通过光标上的操作可以把这些记录检索到客户端的应用程序。
评论加载中…
![]() |