当然,他这里所说的第一行肯定是这一行,proc = conn.prepareCall("{ call usp_ApprInsert(?,?,?,?,?,?) }");最后执行proc.execute();抛出了例外!

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/3557/3557581.xml?temp=.8007318
      

  2.   

    CallableStatement proc = conn.prepareCall("{ call usp_ApprInsert(?,?,?,?,?,?) }");
    proc.setString(1, ID); 
    proc.setString(2, appraisementNO); 
    proc.setString(3, null); 
    proc.setString(4, userID); 
    proc.setString(5, "否"); 
    proc.setString(6, "否"); 
    proc.executeUpdate();
    还有,如果你的ID是自动递增的话,你不能对它进行赋值。
      

  3.   

    我刚才试过了,还是不行!
    现在我的程序是这样的:
    CallableStatement proc = null;
    proc = conn.prepareCall("{ call usp_ApprInsert(?,?,?,?,?,?) }");
    proc.setString(1, ID); 
    proc.setString(2, appraisementNO); 
    proc.setString(3, null); 
    proc.setString(4, userID); 
    proc.setString(5, "否"); 
    proc.setString(6, "否"); 
    proc.executeUpdate();
    错误跟刚才是一样的!怎么办呢?
      

  4.   

    好了!
    我的错误原来是proc = conn.prepareCall("{ call usp_ApprInsert(?,?,?,?,?,?) }");
    里面的两个空格,即{与call之间以及)与}之间都不能有空格!谢谢!