使用INSERT语句实现批量插入

前言

在初始化数据库或者导入一些数据时,常常会用到批量的操作,如果在循环的脚本中使用单条插入数据的语句时,就意味着多次与数据库建立连接,这样会急剧消耗服务器的性能。那么,MySql是提供了批量插入语句的,和单条插入语句类似。

单条插入语句写法

INSERT INTO [表名][列名],[列名]) 
VALUES[列值],[列值]);

批量插入语句写法

INSERT INTO 
[表名]([列名],[列名]) 
 VALUES
([列值],[列值])),
([列值],[列值])),
([列值],[列值]));

由此看来两者很相似,批量插入语句则是在前者的值后面继续添加新的值,并用逗号分隔。

示例

下面创建一个名为‘bhl_tes’的数据库,并创建名为‘test_user’的表,字段分别为‘id’,‘age’,‘name’,’sex‘。

创建数据库‘bhl_tes’

代码

CREATE DATABASE IF NOT EXISTS bhl_test;


查看结果

创建表‘test_user’

代码

CREATE TABLE IF NOT EXISTS `test_user`(
   `id` INT UNSIGNED AUTO_INCREMENT,
   `name` VARCHAR(255) NOT NULL,
   `age` INT(11) NOT NULL,
   `sex` VARCHAR(16),
   PRIMARY KEY ( `id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;


查看结果

批量插入记录

INSERT INTO test_user 
(name, age, sex)
VALUES 
('张三', 18, '男'),
('赵四', 17, '女'),
('刘五', 16, '男'),
('周七', 19, '女');


查看结果

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐