我写了一个存储过程如下:
CREATE OR REPLACE
( fields       VARCHAR2,
  sumVal       table.field1%TYPE)
IS
  l_sumVal     table.field1%TYPE := 0; 
BEGIN
  SELECT SUM(field1)
    INTO l_field1
    FROM table
   WHERE key1 IN (fields);
  sumVal := l_sumVal;
END;
我在执行的时候传入的参数格式为:'1000','1001','1002'
其中'1000','1001','1002'是存在表中的。
为什么会有 :
"ORA-01722: 无效数字" 这个异常产生.
如果我把WHERE key1 IN (fields);替换成WHERE key1 IN ('1000','1001','1002');
就可以执行得到结果,请指点.....................