MySql データベースに数百万の値を挿入するプログラムを作成します。プログラムを最適化して高速化するバッチ挿入について読みましたが、実行しようとすると同じように機能しました。データベースに各値を挿入する代わりに、毎回 500 個の値をリストに保持し、次のように 1 つの大きなループに挿入します。
for(int i=0;i<500;i++)
{
insertData(list.get(i));
}
次に、リスト内のすべての値を削除し、再び 500 個の値の収集を開始します。それはもっとうまくいくべきではありませんか?
私の挿入コードは次のとおりです。
public void insertToNameTable(String id,String name) throws SQLException
{
PreparedStatement ps=null;
ps= conn.prepareStatement("INSERT INTO NameTable values(?,?,?)",user.getId(),user.getName());
ps.setString(1,id);
ps.setString(2,name);
ps.setBoolean(3,false);
ps.executeUpdate();
}
いくつか質問
があります。
2.高速化するには、毎回いくつの値を入力する必要がありますか?(500、1000、10000) 一緒に入力する値が多いほど良いですか?
3. データベースに値を挿入する方法が最善の方法ですか?