0

私は約400kのデータとおそらくそれ以上(SQL形式)を持っており、それをmysqlデータベースに挿入します。データを挿入するSQLファイルにSQLコマンドを書き込むと、パフォーマンスが向上します。

  1. 400kまで、データごとにこのコマンドを繰り返します

    INSERT INTOテーブル(col1、col2、coln)VALUES(val1、val2、valn);

  2. 最初にINSERTコマンドを書き込んでから、次のVALUEステートメントに400kデータを書き込みます

    INSERT INTOテーブル(col1、col2、coln)VALUES(val1、val2、valn)、(val1、val2、valn)、(val1、val2、valn)、.....400kデータまで

  3. このコマンドを2番のように繰り返しますが、100データごとにのみ

    INSERT INTOテーブル(col1、col2、coln)VALUES(val1、val2、valn)、(val1、val2、valn)、(val1、val2、valn)、.....[100データまで]
    INSERT INTOテーブル(col1 、col2、coln)VALUES(val1、val2、valn)、(val1、val2、valn)、(val1、val2、valn)、.....[次の100データまで]

  4. または多分別の良いオプションがありますか?

4

1 に答える 1

0

最初または2番目のバリアントを使用できますが、2番目のバリアントの方が高速な場合があります。2番目のバリアントとステートメントの長さを最大許容パケットサイズ(MySQL変数)よりも長く選択した場合は、3番目のバリアントを適用します-INSERTステートメントをいくつかの小さなステートメントに分割します。

于 2012-08-09T07:35:52.797 に答える