java调用存储过程但参数传递不进去是什么情况?
代码如下
  CallableStatement       cs = getDataSource().getConnection().prepareCall("{call RECEIVE_CHARGE(?,?,?,?,?,?,?)}");
        int i=1;
        cs.setString(i++,strdate );
        cs.setString(i++, vo.getOperator());
        cs.setString(i++, "2014");
        cs.setString(i++, "2013-11-15");
        cs.setString(i++, "2014-3-15");
        cs.setInt(i++, 1);
        cs.setString(i++, vo.getHousecode());
        cs.execute();
        getDataSource().getConnection().close();
这种情况下后台一直在报错 说接收不到 第三个 2014 那个参数 这是为何? 求解决办法

解决方案 »

  1.   


    为什么要成 i++???直接1  2  3  4  5 不行吗  
    写12345这种也是报同样的错误 接不到参数把存储过程贴出来看看呢存储过程是没问题的  直接在plsql中test 和另外一个地方调用的时候都没问题  就这处调用的时候报错
      

  2.   

    把procedure的IN 参数要 贴出来吧
      

  3.   


    create or replace procedure receive_charge(
    czsj in varchar2,
    czr in varchar2,
    sfnd in varchar2,
    startdate in varchar2,
    enddate in varchar2,
    countcus in varchar2,
    usercode in varchar2
    )
    ascursor c_infor is