问oracle plsql存储过程错误处理ora-6502ENSQL> create table t_book(bookid varchar2(3),bookname varchar2(50),publish varchar2(50)); Table created SQL> SQL> create or replace procedure sp_add_book(bookid in varchar2, bookname in varchar2,publish in varchar2) is 2 begin 3 insert into t_b
DECLAREv_tempVARCHAR2(10);BEGINv_temp :='abcdefghijklmn';EXCEPTIONWHENVALUE_ERRORTHENDBMS_OUTPUT.put_line ('出现VALUE_ERROR错误,错误编码为:'||SQLCODE||', 错误名称:'||SQLERRM);END; 出现VALUE_ERROR错误,错误编码为:-6502 , 错误名称:ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太 5、自...
提示:VALUE_ERROR定义在STANDARD包里: VALUE_ERROR EXCEPTION; PRAGMA EXCEPTION_INIT (VALUE_ERROR, '-6502'); 选项1: DECLARE l_string VARCHAR2(5); BEGIN l_string := '123456'; EXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE (SQLCODE); END; / 选项2: DECLARE l_number NUMBER := 10; l...
5.4在PL/SQL中使用SQLCODE, SQLERRM异常处理函数 由于ORACLE的错信息最大长度是512字节,为了得到完整的错误提示信息,我们可用SQLERRM和SUBSTR函数一起得到错误提示信息,方便进行错误,特别是如果WHEN OTHERS异常处理器时更为方便。 SQLCODE 返回遇到的Oracle错误号, SQLERRM 返回遇到的Oracle错误信息. 如: SQLCODE=-100 è...
DBMS_OUTPUT.PUT_LINE是Oracle提供的用于在控制台或日志中输出信息的包。 你可以在异常处理部分使用DBMS_OUTPUT.PUT_LINE来输出错误代码(SQLCODE)、错误描述(SQLERRM)以及堆栈跟踪(DBMS_UTILITY.FORMAT_ERROR_BACKTRACE)。 示例代码: sql CREATE OR REPLACE PROCEDURE prc_test IS p_1 VARCHAR2(2); BEGIN p_1 ...
-6502VALUE_ERROR-43322001 -6511CURSOR_ALREADY_OPEN-50224502 -6532SUBSCRIPT_OUTSIDE_LIMIT-20439428H1 -6533SUBSCRIPT_BEYOND_COUNT-204392202E -6592CASE_NOT_FOUND-77320000 -54-90457011 -60-91140001 -310-20642703 -595-39042887 -597-30342806 -598-40723502 ...
-6502 VALUE_ERROR -433 22001 -6511 CURSOR_ALREADY_OPEN -502 24502 -6532 SUBSCRIPT_OUTSIDE_LIMIT -20439 428H1 -6533 SUBSCRIPT_BEYOND_COUNT -20439 2202E -6592 CASE_NOT_FOUND -773 20000 -54 -904 57011 -60 -911 40001 -310 -206 42703 -595 -390 42887 -597 -303 42806 -598 -407 23502...
(loop_counter-1)*10),P_START_INDEX); RETURN P_OUT; EXCEPTION WHEN OTHERS THEN IF SQLCODE = -12801 OR SQLCODE = -6502 OR SQLCODE = -1401 OR SQLCODE = -1489 THEN NULL; -- suppresses ORA-12801 "error signal from parallel server" or ORA-06502 exception "character string buffer too ...
exception oracle error sqlcode value condition no_data_found ora-01403 +100 select into 语句没有符合条件的记录返回 too_many_rows ora-01422 -1422 select into 语句符合条件的记录有多条返回 dup_val_on_index ora-00001 -1 对于数据库表中的某一列,该列已经被限制为唯一索引,程序试图存储两个重复的值...
VALUE_ERROR — ORA-06502 SQLCODE = -6502 数值转换错误 ACCESS_INTO_NULL试图为NULL对象的属性赋值 ZERO_DIVIDE — ORA-01476 SQLCODE = -1476 被零除 OTHERS — 其它任何错误的处理 88、 如何使用异常? 在oracle中有三种类型的异常。预定义的异常 非预定义的异常 用户定义的异常 第二种非预定义的异常是与...