【问题标题】:ORA-06502 PL/SQL: numeric or value error: character to number conversion error;ORA-06502 PL/SQL:数字或值错误:字符到数字的转换错误;
【发布时间】:2014-05-08 14:55:53
【问题描述】:

在函数中,我在这一行出现 ORA-06502 错误:

newlist := LTRIM(RTRIM(newlist)) + ',';

CREATE OR REPLACE FUNCTION String_To_Int_Table
(
         list VARCHAR2
       , delimiter NCHAR DEFAULT ',' 
)
RETURN t_nested_table
AS

   value VARCHAR(11);
   position INT;
   newlist varchar2(4096);
   tableList t_nested_table;
...
newlist := list;
newlist := LTRIM(RTRIM(newlist)) + ',';

我在这里没有看到任何转换问题。 /完全糊涂/

【问题讨论】:

    标签: sql oracle plsql


    【解决方案1】:

    oracle 中的字符串连接运算符是||,而不是+

    字节码编译器尝试将总和的 varchar2 操作数自动转换为数字,并且可以预见地失败了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-19
      • 1970-01-01
      • 2014-04-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多