如何在mysql中插入多行

问题描述 投票:0回答:3

我有一个表名::users,在mysql中有id和name,id是自动递增的主键,name是varchar(50),现在我有一堆唯一的名称几乎70个,我应该如何批量插入它,我知道基本的陈述,但我没有找到与这个问题最相关的东西

mysql> 描述用户;

+-------+--------------+------+-----+---------+----------------+
| Field | Type         | Null | Key | Default | Extra          |
+-------+--------------+------+-----+---------+----------------+
| id    | int(11)      | NO   | PRI | NULL    | auto_increment |
| name  | varchar(100) | YES  |     | NULL    |                |
+-------+--------------+------+-----+---------+----------------+
mysql insert-update
3个回答
2
投票

MySQL 文档 说:

使用 VALUES 语法的 INSERT 语句可以插入多行。为此,请包含多个以逗号分隔的列值列表,其中列表括在括号内并用逗号分隔。示例:

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);

您还可以使用 Insert ... Select ... 语法:

INSERT INTO tbl_name (a,b,c)
SELECT a,b,c
FROM ...

0
投票

如果您拥有要插入文件内的所有信息,您可以使用

LOAD DATA INFILE

LOAD DATA INFILE 'InfoToBeInsertedInsideDB.csv' 
INTO TABLE tbl_name
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;

csv
看起来像:


0
投票

你可以做

insert into users (name) values ("name1"),("name2");
© www.soinside.com 2019 - 2024. All rights reserved.