1

JDBC で一度に複数の行を抽出する方法はありますか? (クラスの) 次のメソッドResultSetでは、一度に 1 行ずつ処理できます。

私のクエリは何千もの行を返します (行ごとに 1 つの列のみ)。行は非常に無駄がなく、列の値を抽出したいだけです。このユース ケースでは、一度に 1 行ずつ次の行をループすると非常に遅くなります。

4

1 に答える 1

0

ResultSet は一度に 1 行しか返しませんが、jdbc ドライバーは Statement.setFetchSize() で指定した量の行をフェッチする必要があります。

void setFetchSize(int 行)

この Statement によって生成された ResultSet オブジェクトにさらに行が必要な場合に、データベースからフェッチする必要がある行数に関するヒントを JDBC ドライバーに提供します。

Statement/PreparedStatement を作成するときに、フェッチ方向を適切に設定することもお勧めします。

于 2012-11-28T20:54:55.640 に答える