简体   繁体   English

SQL错误:ORA-06502:PL / SQL:数字或值错误

[英]SQL Error: ORA-06502: PL/SQL: numeric or value error

I am experiencing below error on execution of trigger: 我在执行触发时遇到以下错误:

SQL Error: ORA-06502: PL/SQL: numeric or value error
ORA-06512: at "Test.ADD_DUMMY_RULE", line 13


create or replace
TRIGGER "ADD_DUMMY_RULE" 
BEFORE DELETE ON testTable
   FOR EACH ROW
WHEN (
old.product_id != 0
      )
DECLARE
 pcnt  NUMBER(14);

BEGIN
 pcnt := 0;

trig_pkg.rowIndex := trig_pkg.rowIndex + 1;

 -- STORING IMAGE_ID
 trig_pkg.old_image_id := :OLD.image_id;

 IF (trig_pkg.rimage_id IS NOT NULL) THEN
  FOR i IN 1..(trig_pkg.hold_imid_tablsize) LOOP
   IF (trig_pkg.old_image_id = trig_pkg.rimage_id(i)) THEN
    pcnt := pcnt + 1;
   END IF;
  END LOOP;
 END IF;

END;

Please suggest what could be the cause of issue. 请提出可能导致问题的原因。

Edit 编辑

datatypes: 数据类型:

trig_pkg.rowIndex - Number
trig_pkg.rimage_id - IS TABLE OF INTEGER INDEX BY binary_integer;
trig_pkg.hold_imid_tablsize- NUMBER(14)

try to remove the following IF part string 尝试删除以下IF部分字符串

IF (trig_pkg.rimage_id IS NOT NULL) THEN

INDEX BY - Tables do not need to initialized INDEX BY - 表不需要初始化

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 奇怪的ORA-06502:PL / SQL:数字或值错误 - Strange ORA-06502: PL/SQL: numeric or value error ORA-06502: PL/SQL: 连接时出现数字或值错误 - ORA-06502: PL/SQL: numeric or value error when concatenating ORA-06502: PL/SQL: ora_sql_txt 出现数字或值错误 - ORA-06502: PL/SQL: numeric or value error by ora_sql_txt 获取ORA-06502:PL / SQL:数字或值错误:SQL触发器中的字符到数字转换错误 - Getting ORA-06502: PL/SQL: numeric or value error: character to number conversion error in SQL trigger ORA-06502:PL / SQL:数字或值错误:Oracle SQL查询中的字符串缓冲区太小 - ORA-06502: PL/SQL: numeric or value error: character string buffer too small in Oracle sql query ORA-06502 PL / SQL:数字或值错误:字符到数字的转换错误; - ORA-06502 PL/SQL: numeric or value error: character to number conversion error; Oracle数据库错误:ORA-06502:PL / SQL:数字或值错误:字符串缓冲区太小 - Oracle Database Error: ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小 - ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06502:PL / SQL:数字或值错误:数字精度太大 - ORA-06502: PL/SQL: numeric or value error: number precision too large 包含4000个以上字符的Substr获得ORA-06502:PL / SQL:数字或值错误 - Substr with more than 4000 characters gets ORA-06502: PL/SQL: numeric or value error
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM