我的 java 代码中有一个存储过程调用,它使用 sybase 数据库,如下所示:
CallableStatement cstmt=sigmaConnection.prepareCall("{call dbo.sp_insRadEntry(?, ?, ?, ?, ?, ?, ?)}");
cstmt.setString(1,"Nappa");
cstmt.setInt(2,40);
cstmt.setString(3,"Vegeta");
cstmt.setString(4,"Saiyan");
cstmt.setString(7,"Hello");
cstmt.execute();
如您所见,我故意不设置第 5 和第 6 个参数,因为如果未传递任何值并且在此调用中调用 dbo.sp_insRadEntry(?, ?, ?, ?, ?, ?, ? ) 我有 7 个参数,因为它不允许我在没有 7 个逗号的情况下设置第 7 个参数。
但是即使我已经设置了第四个参数,我也会遇到以下异常:
'java.sql.SQLException:JZ0SA:Prepared Statement:未设置输入参数,索引:4。'