在 CSV 导入过程中使用 LOAD DATA INFILE 分配列
使用 LOAD DATA INFILE 将数据从 CSV 文件导入 MySQL 可能会变得具有挑战性。 CSV 文件中的列与 MySQL 中的表列的顺序不同。要自动分配与 MySQL 表列相对应的列,请按照以下步骤操作:
使用自动列分配导入数据的语法
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...);
参数
示例
考虑一个名为“abc.csv”,数据格式如下:
name,age,occupation John Doe,25,Engineer Jane Smith,30,Doctor
以及一个名为“employees”的 MySQL 表,其结构如下:
CREATE TABLE employees ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, age INT NOT NULL, occupation VARCHAR(100) NOT NULL, PRIMARY KEY (id) );
从“abc”导入数据.csv”到具有自动列分配的“employees”表中,执行以下查询:
LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE employees FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (name, age, occupation);
此查询将自动分配根据顺序将 CSV 文件中的列映射到“员工”表中的相应列。
以上是使用LOAD DATA INFILE将CSV数据导入MySQL时如何自动分配列?的详细内容。更多信息请关注PHP中文网其他相关文章!