1

重複の可能性
: 複数の単一 INSERT と 1 つの複数行 INSERT のどちらが速いですか?

mysql に関する本を読んでいるときに、データベースに行を挿入する 2 つの方法を見つけました。

Method 1 

INSERT INTO tableName (col1, col2, col3) VALUES('a', 'b', 'c');
INSERT INTO tableName (col1, col2, col3) VALUES('d', 'b', 'c');
INSERT INTO tableName (col1, col2, col3) VALUES('e', 'b', 'c');

Method 2

INSERT INTO tableName (col1, col2, col3) VALUES('a', 'b', 'c'), ('d', 'b', 'c'), ('e', 'b', 'c');

2 番目の方法は最初の方法よりも効率的ですか? それとも単にMethod 1複数回呼び出すのですか?

4

1 に答える 1

2

2 つ目はより効率的です。

最初の方法では、行を挿入するたびに接続が作成されます。2 番目の方法では、1 つの接続を使用してすべての行を挿入します。ただし、max_allowed_packetクライアントのINSERTステートメントの長さを制限する a があります。

于 2012-10-26T14:05:36.877 に答える