oracle pl sql VALUE_ERROR
2014-03-09 22:47
351 查看
先创建表:
插入一些数据。
创建VALUE_ERROR的代码:
会报VALUE_ERROR的记录:
上面的USER_NAME长度大于5,于是会报VALUE_ERROR。
执行:
输出:
CREATE TABLE TB_USER ( ID INTEGER PRIMARY KEY, USER_NAME VARCHAR2(20) NOT NULL, USER_AGE INTEGER NOT NULL ); CREATE SEQUENCE SEQ_USER INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE CACHE 10; CREATE OR REPLACE TRIGGER TR_USER BEFORE INSERT ON TB_USER FOR EACH ROW BEGIN SELECT SEQ_USER.NEXTVAL INTO :NEW.ID FROM DUAL; END;
插入一些数据。
创建VALUE_ERROR的代码:
CREATE OR REPLACE PROCEDURE PRO_VALUE_ERROR(USER_ID IN INTEGER) AS V_AGE INTEGER; V_NAME VARCHAR2(5); BEGIN SELECT USER_NAME, USER_AGE INTO V_NAME, V_AGE FROM TB_USER WHERE ID=USER_ID; EXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.put_line('v_name is too short'); END;
会报VALUE_ERROR的记录:
SQL> SELECT * FROM TB_USER WHERE ID=505; ID USER_NAME USER_AGE ---------- -------------------- ---------- 505 FOR_REVERSE_80 80
上面的USER_NAME长度大于5,于是会报VALUE_ERROR。
执行:
CALL PRO_VALUE_ERROR(505);
输出:
v_name is too short
相关文章推荐
- oracle report err:REP-2103 PL/SQL formula returned invalid value or no value
- ORA-06502:PL/SQL :numberic or value error: character string buffer too small
- ORA-06502: PL/SQL:numeric or value error!
- PL/SQL: numeric or value error: character to number conversion error
- Oracle PL/SQL 非预定义异常、自定义异常处理、RAISE_APPLICATION_ERROR
- Oracle PL/SQL开发基础(第三十四弹:RAISE_APPLICATION_ERROR)
- Ora06502: PL/SQL numberic or value error.
- pl/sql SP中常见三个报错(fetch out of sequence,invalid ROWID,numeric or value error)
- PL/SQL的value_error例外
- ORA-06502:PL/SQL :numberic or value error: character string buffer too small
- 【Oracle】PL/SQL 非预定义异常、自定义异常处理、RAISE_APPLICATION_ERROR
- ORA-06502: PL/SQL: numeric or value error: character string buffer too small
- ORA-06502: PL/SQL: numeric or value error: character string buffer too small
- ORA-06502:PL/SQL numeric or value error:associate array shape is not consistent with session parame
- ORA-06502: PL/SQL: numeric or value error: character string buffer too small
- ORA-06502: PL/SQL:numeric or value error!
- PHP调用Oracle存储过程时的错误:ORA-06502: PL/SQL: numeric or value error: character string buffer too small
- list agg cause ORA-06502 PL/SQL: numeric or value error
- pl/sql异常之value_error小例子
- 【Oracle】PL/SQL 非预定义异常、自定义异常处理、RAISE_APPLICATION_ERROR