oracle错误 ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小,请问各位,这个问题如何解决啊?

如题所述

你赋给变量的值的长度,超出了变量的长度。比如:
过程中定义了一个变量 a varchar2(2); -- a的长度为2
而在赋值时 a := '123123'; -- '123123'的长度为6

这样就会出现你所遇到的问题,解决方法是找到变量,将其长度加大,注意:plsql中varchar2长度上限是4000
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-26
如果没有办法避免的话,下方写:
exception
when value_error then '数字超长';
第2个回答  2012-10-30
定义变量时,如果是表的属性字段,最好用表.属性%TYPE来定义变量.
第3个回答  2019-06-12
后台调用的时候赋值Varchar2 的size,如果不赋值就会报错
如:new OracleParameter("ddd",OracleDbType.Varchar2) 不行,要赋值个字符长度
new OracleParameter("ddd",OracleDbType.Varchar2,50)
第4个回答  2018-03-30

你赋给变量的值的长度,超出了变量的长度。

比如:
过程中定义了一个变量 a varchar2(2); -- a的长度为2
而在赋值时 a := '123123'; -- '123123'的长度为6



这样就会出现你所遇到的问题,解决方法是找到变量,将其长度加大,注意:plsql中varchar2长度上限是4000。

本回答被网友采纳
相似回答