解决方案 »

  1.   

    有一个参数是out,但是你把3个都当in传进去了
      

  2.   

    我第三个参数是以out形式传过去了啊parm[2].Direction = ParameterDirection.Output;
      

  3.   

    是关键字,我已经改为num1,但是问题还是那个问题,没有解决掉
      

  4.   

    那就是这里了吧:
    parm[0] = new OracleParameter("process", OracleType.VarChar, 50);
    既然是varchar类型,你不是应该传类似"'50'"这种东西吗
      

  5.   

    你参数不是varchar类型吗,50是number类型啊
    varchar类型要加引号啊
      

  6.   

    发现的问题是代码中第三个参数写的是num,但是存储过程写的是sum1,这块不对应导致,谢谢大家伙