JDBC ドライバーに問題があるようです。
次の Java コードを実行しようとしています。
String sql = "{call get_samp_stud_no_out (?,?,?)}";
CallableStatement call = conn.prepareCall(sql);
call.setInt("objId1", 1);
call.setInt("objId2", 2);
call.setInt("objId3", 3);
ResultSet results = call.executeQuery();
そして、私は得ています:
java.lang.AbstractMethodError: com.sybase.jdbc2.jdbc.SybCallableStatement.setInt(Ljava/lang/String;I)V
ところで、その sybase データベースです。jconn2.jar と jconn3.jar の両方を試しました。
そして、文字列パラメータを受け入れる他のストアド プロシージャ:
String sql = "{call get_samp_stud_no_name (?,?,?)}";
CallableStatement call = conn.prepareCall(sql);
call.setString("objId1", "nappa");
call.setString("objId2", "vegeta");
call.setString("objId3", "frieza");
ResultSet results = call.executeQuery();
これに対する例外は次のとおりです。
Exception in thread "main" java.lang.AbstractMethodError: com.sybase.jdbc2.jdbc.SybCallableStatement.setString(Ljava/lang/String;Ljava/lang/String;)V