蒙国造博客

MySQL批量插入数据

MySQL插入多条数据有二种方法,一种是写多条insert语句,再用逗号;分割每条语句,另外一种是用insert一次性赋多个值。

1 多条语句

写多条insert,用同数量的;号隔开,让MySQL执行多次。比如:

insert into table (field1, field2, field3) value ("a", "b", "c");
insert into table (field1, field2, field3) value ("d", "e", "f");
insert into table (field1, field2, field3) value ("g", "h", "i");

这种方法在插入大数据、高并发时,效率很低。

2 赋多个值

insert中写多个值:

INSERT INTO table (field1, field2, field3) VALUES ("a", "b", "c"), ("d", "e", "f"), ("g", "h", "i");

如果列名完全对应,也可以这样写:

INSERT INTO table VALUES ("", "b", "c"), ("", "e", "f"), ("", "h", "i");

其中,第一列是自增的主键,也必须传入,内容为空。

 

参考链接:

  1. MysqL用insert语句批量插入数据
  2. 14.2.5 INSERT Syntax
退出移动版