如何从第一行包含列名的文本文件导入数据?


有时,输入文本文件的第一行包含列名,要将此类文本文件中的数据导入到 MySQL 表中,我们需要使用“IGNORE ROWS”选项。为了说明这一点,我们使用以下示例:

示例

以下是 A.txt 文件中的逗号分隔值:

Id,Name,Country,Salary
100,”Ram”,”INDIA”,25000
101,”Mohan”,”INDIA”,28000

我们想将这些数据导入名为 employee3_tbl 的文件中:

mysql> Create table employee3_tbl(Id Int, Name Varchar(20), Country Varchar(20),Salary Int);
Query OK, 0 rows affected (0.1 sec)

现在,可以使用以下语句将数据从文件传输到数据库表:

mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee3_tbl FIELDS TERMINATED BY ',' ENCLOSED BY ‘“’ IGNORE 1 ROWS;
Query OK, 2 rows affected (0.16 sec)
Records: 2 Deleted: 0 Skipped: 0 Warnings: 0

在上例查询中,MySQL 将忽略第一行。忽略的行数取决于“IGNORE n ROWS”选项中“n”的值。

mysql> Select * from employee3_tbl;
+------+-------+---------+--------+
| Id   | Name  | Country | Salary |
+------+-------+---------+--------+
| 100  | Ram   | INDIA   | 25000  |
| 101  | Mohan | INDIA   | 28000  |
+------+-------+---------+--------+
2 rows in set (0.00 sec)

以上结果集显示 A.txt 文件中的数据已传输到表中。

更新于:2020年2月4日

380 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.