0

ここ数日、Java の Batch Insert がバックエンドでどのように機能するのか疑問に思っていました。これは、私が自分自身にアイデアを与えるために見てきたサンプルコードです。

for (int ctr = 0; ctr < myArrayList.size(); ctr = ctr ++ ) {

    myStatement.setObject(1, myArrayList.get(ctr) );
    myStatement.addBatch();
    myStatement.clearParameters();

}

そのあと電話するmyStatement.executeBatch()。このサンプル コードは、2 つのアイデアを残しました。

まず、 を呼び出した後、データベースはバッチごとにステートメントをexecuteBatch()実行しますか? バッチ サイズが 3 の場合、データベースはステートメントを 3 回実行しますか? はいの場合、データベースはステートメントを最初のバッチから最後まで実行しますか、それともその逆ですか? (はい、バッチの配置は私にとって重要です) 次に、データベースは VALUES をコンマで区切った単一のステートメントを実行しますか?INSERTmyStatementmyStatementINSERT
INSERT

INSERT

4

1 に答える 1