在 MySQL 中批量插入值
Preet Sanghavi
2023年1月30日
本教程旨在了解如何使用 INSERT
语句在 MySQL 中批量插入值。
在开始批量值之前,让我们了解如何使用 INSERT
语句填充单个行或条目。
INSERT INTO
语句用于在表中插入新记录。要执行此操作,我们需要在语句中添加两件事:
- 要插入数据的表名和列名。
- 要插入的值。
让我们试着理解这个语句是如何工作的。
在开始之前,我们创建了一个虚拟数据集来使用。在这里,我们创建了一个表,student_details
,以及其中的几行。
-- create the table student_details
CREATE TABLE student_details(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_lastName varchar(255) DEFAULT NULL,
primary key(stu_id)
);
使用 INSERT
语句插入单数条目
上面的查询让我们创建一个名为 student_details
的表。现在借助 INSERT
语句,让我们尝试为一些学生添加数据。此操作可以按如下方式完成:
-- insert rows to the table student_details
INSERT INTO student_details
VALUES(1,"Preet","Sanghavi");
上面的代码将在表 student_details
中输入学生数据。我们可以使用以下命令可视化此表:
SELECT * from student_details;
上述代码块将生成以下输出:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
使用 INSERT
语句批量插入值
虽然上面的方法可以帮助我们添加数据,但无法为多个用户添加数据。为了使此任务更容易,我们使用以下语法在表中添加多个值:
INSERT INTO table_name (col_1, col_2, col_3)
VALUES (value_1_row_1, value_2_row_1, value_3_row_1),
(value_1_row_2, value_2_row_2, value_3_row_2);
让我们尝试使用上述语法同时为多个学生插入数据。我们可以使用以下方法来做到这一点:
-- insert bulk rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
VALUES(1,"Preet","Sanghavi"),
(2,"Rich","John"),
(3,"Veron","Brow"),
(4,"Geo","Jos"),
(5,"Hash","Shah"),
(6,"Sachin","Parker"),
(7,"David","Miller");
上面的代码让我们插入批量条目并生成以下内容:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
因此,在 INSERT
语句的帮助下,我们可以一次有效地输入单行和批量行。通常,在生产环境中进行批量条目以节省时间和资源。
作者: Preet Sanghavi