📅  最后修改于: 2023-12-03 15:17:47.637000             🧑  作者: Mango
在 MySQL 中,可以使用 LOAD DATA INFILE
命令从 CSV 文件中加载数据到数据库表中。该命令可以方便地将大量数据批量导入数据库表中,而不需要逐条插入数据。
以下是一个示例的 LOAD DATA INFILE
命令的用法:
LOAD DATA INFILE 'path/to/file.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
path/to/file.csv
是你要加载的 CSV 文件的路径。请确保 MySQL 服务器能够访问到该文件。table_name
是要将数据加载到其中的目标表的名称。FIELDS TERMINATED BY ','
指定了 CSV 文件中字段之间的分隔符,这里使用逗号作为分隔符。ENCLOSED BY '"'
指定了用于包围字段值的字符,这里使用双引号。LINES TERMINATED BY '\n'
指定了行的分隔符,这里使用换行符。IGNORE 1 ROWS
告诉 MySQL 忽略文件中的首行,该行通常是表头。LOAD DATA INFILE
命令之前,需要确保 MySQL 服务器具有读取指定文件的权限。假设我们有一个名为 employees
的表,其结构如下:
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
);
我们有一个名为 employees.csv
的 CSV 文件,包含以下数据:
id,name,age
1,John,25
2,Emily,30
3,Michael,35
要将该 CSV 文件的数据导入到 employees
表中,可以使用以下命令:
LOAD DATA INFILE '/path/to/employees.csv'
INTO TABLE employees
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
成功执行该命令后,employees
表将包含以下数据:
| id | name | age | |----|---------|-----| | 1 | John | 25 | | 2 | Emily | 30 | | 3 | Michael | 35 |
这样,你就成功地将 CSV 文件中的数据加载到了 MySQL 数据库表中。
注意:以上示例中的路径和文件名仅为示意,实际使用时,请根据你的文件路径和表结构进行相应修改。