mysqlのinsertで速度がでない場合には、multiple insert を使用しましょう!
1項目のinsert
1項目だけのinsertは以下のように書きます。
1 |
insert into テーブル名 (col1, col2) values (1, 2); |
複数項目のinsert
multiple insert、つまり複数項目のinsertは以下のように書きます。
1 |
insert into テーブル名 (col1, col2) values (1, 2), (10, 20), (100, 200) ; |
なお、1つのSQL文の長さの最大値が「max_allowed_packet」で制御されているので、ご注意ください。
MySQL クライアントまたは mysqld サーバーが max_allowed_packet バイトより大きいパケットを受け取ると、ER_NET_PACKET_TOO_LARGE エラーが発行され、接続が失われます。
参考URL:https://dev.mysql.com/doc/refman/5.6/ja/packet-too-large.html