You can speed the MySQL insert when you are inserting multiple records at the same time with the help of the following syntax
START TRANSACTION insert into insertDemo(yourColumnName1,yourColumnName2,...N) values(yourValue1,yourValue2,....N),(yourValue1,yourValue2,....N),.......N commit
Let us first create a demo table
mysql> create table insertDemo -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20), -> StudentAge int -> ); Query OK, 0 rows affected (0.72 sec)
Insert multiple records at the same time. The query is as follows −
mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec) mysql> insert into insertDemo(StudentName,StudentAge) values('John',21),('Carol',22),('Bob',21),('David',24), -> ('Maxwell',25),('Mike',22); Query OK, 6 rows affected (0.00 sec) Records: 6 Duplicates: 0 Warnings: 0 mysql> commit; Query OK, 0 rows affected (0.14 sec
Display all records from the table using select statement. The query is as follows −
mysql> select *from insertDemo;
The following is the output
+-----------+-------------+------------+ | StudentId | StudentName | StudentAge | +-----------+-------------+------------+ | 1 | John | 21 | | 2 | Carol | 22 | | 3 | Bob | 21 | | 4 | David | 24 | | 5 | Maxwell | 25 | | 6 | Mike | 22 | +-----------+-------------+------------+ 6 rows in set (0.00 sec)