sql >> データベース >  >> RDS >> Mysql

mysqlは行を挿入するのに時間がかかりすぎます

    サーバーの設定が間違っていると自動的に想定しないでください。デフォルト設定でおそらく問題ありません。古いマシンであっても、10000行を挿入するのは簡単なことですが、挿入方法によって異なります。

    ここでは、低速から高速まで、データを挿入するための3つの方法について説明します。

    挿入する行が多い場合、以下は非常に遅くなります。

    INSERT INTO mytable (id,name) VALUES (1,'Wouter');
    INSERT INTO mytable (id,name) VALUES (2,'Wouter');
    INSERT INTO mytable (id,name) VALUES (3,'Wouter');
    

    これはすでにはるかに高速です:

    INSERT INTO mytable (id, name) VALUES
      (1, 'Wouter'),
      (2, 'Wouter'),
      (3, 'Wouter');
    

    (間違った構文を編集)

    そして、これは通常最速です:

    次のようなCSVファイルを作成します:

    1,Wouter
    2,Wouter
    3,Wouter
    

    そして、

    のようなものを実行します
    LOAD DATA FROM INFILE 'c:/temp.csv' INTO TABLE mytable
    

    上記のどの方法を使用しますか?



    1. Excelデータから挿入ステートメントを生成してSQLServerテーブルにロードする方法-SQLServer/TSQLチュートリアルパート103

    2. INFORMATION_SCHEMAとsysobjects

    3. エンティティデータフレームワークからのトリガーの代わりにテーブルに挿入するときにエラーが発生しました

    4. SQLはグループのn番目のメンバーを選択します