0

Oracle 10g データベースにストアド プロシージャがあり、Java コードで次のように呼び出します。

CallableStatement cs = bdr.prepareCall("Begin ADMBAS01.pck_basilea_reportes.cargar_reporte(?,?,?,?,?); END;", ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
    cs.setInt(1, this.reportNumber);
    cs.registerOutParameter(2, OracleTypes.CURSOR);
    cs.registerOutParameter(3, OracleTypes.INTEGER);
    cs.registerOutParameter(4, OracleTypes.VARCHAR);
    cs.setDate(5, new java.sql.Date(this.fecha1.getTime()));
    cs.execute();

ResultSet rs = (ResultSet)cs.getObject(2);

正しいレコードを含む ResultSet を取得しますが、「scroll_insensitive - only」操作を試みると (absolute(1) など)。FORWARD のみの resultSet では機能しないという SQLException が引き続き発生します。

では、scroll_insensitive 機能を使用してこの ResultSet を取得するにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

1

結果セットのタイプは、ドライバーへの単なる提案であり、ドライバーが準拠できない場合は無視するか、FORWARD_ONLY にダウングレードできます。詳しくはこちらをご覧ください。

于 2009-12-16T03:26:08.977 に答える