MySQL使用Load Data INFILE从CSV导入数据

MySQL使用Load Data INFILE从CSV导入数据

我将从CSV文件中导入一些20000行的数据到mysql中。

CSV中的列与MySQL表的列的顺序不同。如何自动分配与MySQL表列对应的列?

当我执行

LOAD DATA INFILE'abc.csv' INTO TABLE abc

此查询将所有数据添加到第一列。

请建议将数据导入MySQL的自动语法。


森林海
浏览 1794回答 3
3回答

阿波罗的战车

你可以用负载数据信息命令导入CSV把文件放进桌子里。检查这个链接MySQL-加载数据INFILE.LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE abc FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'IGNORE 1 LINES(col1, col2, col3, col4, col5...);对于MySQL8.0用户:使用LOCAL关键字保存安全风险,并且在MySQL8.0中,LOCAL能力设置为False默认情况下。您可能会看到错误:错误1148:此MySQL版本不允许使用所使用的命令您可以按照文档中的说明..请注意,这种覆盖并不能解决安全问题,而只是承认您知道并愿意承担风险。

jeck猫

您可能需要设置FIELDS TERMINATED BY ','或者不管分隔符是什么。对于CSV文件,您的语句应该如下所示:LOAD DATA INFILE 'data.csv' INTO TABLE tbl_name FIELDS TERMINATED BY ',' ENCLOSED BY '"'LINES TERMINATED BY '\r\n'IGNORE 1 LINES;
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL