Det är mest troligt för att du infogar poster så här:
INSERT INTO `table1` (`field1`, `field2`) VALUES ("data1", "data2");
INSERT INTO `table1` (`field1`, `field2`) VALUES ("data1", "data2");
INSERT INTO `table1` (`field1`, `field2`) VALUES ("data1", "data2");
INSERT INTO `table1` (`field1`, `field2`) VALUES ("data1", "data2");
INSERT INTO `table1` (`field1`, `field2`) VALUES ("data1", "data2");
Skickar en ny fråga varje gång du behöver INSERT
något är dåligt för prestandan. Kombinera istället dessa frågor till en enda fråga, så här.
INSERT INTO `table1` (`field1`, `field2`) VALUES ("data1", "data2"),
("data1", "data2"),
("data1", "data2"),
("data1", "data2"),
("data1", "data2");
Du kan också läsa mer om infogningshastighet i MySQL Docs . Den beskriver tydligt följande.
Naturligtvis kombinera inte ALLA, om mängden är ENORM. Säg att du har 1000 rader du behöver infoga, gör sedan inte det en i taget. Men du bör förmodligen inte lika försöka ha alla 1000 rader i en enda fråga. Dela upp den i mindre storlekar istället.
Om det fortfarande är väldigt långsamt kan det bero på att din server är långsam.
Observera att du naturligtvis inte behöver alla dessa utrymmen i den kombinerade frågan, det är helt enkelt för att få en bättre överblick över svaret.