キーを自動的に生成するテーブルに大量の行を挿入したいと考えています。JDBC は、生成されたキーの取得がバッチ更新で機能することを保証しません。
It is implementation-defined as to whether getGeneratedKeys will return
generated values after invoking the executeBatch method.
(JDBC 4.0 仕様 2006、p. 135)。
私には2つの選択肢があります。すべての行を個別に挿入してキーを取得します。または、バッチ挿入を実行してからキーをクエリします。
複数のキーをクエリするためのラウンドトリップを避けるために、ここでこのアプローチを使用できます。たとえば、サイズの異なる 5 つの準備済みステートメントがある。そして、私の「バッチクエリ」を可能な限り最小のステートメントに分割します。
より速い方法は何ですか?