使用 phpmyadmin 将单列 csv 文件导入 mysql

Posted

技术标签:

【中文标题】使用 phpmyadmin 将单列 csv 文件导入 mysql【英文标题】:import single column csv file into mysql using phpmyadmin 【发布时间】:2013-05-03 02:44:10 【问题描述】:

我有一个单列 csv 文件,其列为

Mahindra Logan 
Mahindra Xylo
Maruti Suzuki Swift

当我用记事本+查看文件时,它显示完整的 514 行 但是当我在记事本中查看时,所有数据都被合并并显示为 3 行。 现在,当我使用 CSV USING LOAD DATA 导入 phpmyadmin 并仅选择“\n”作为以 .导入 3-4 个条目。 如果可能,请帮助我

【问题讨论】:

【参考方案1】:

这可能是由于几件事:

    如果您的表有几列并且您正在导入一个包含一列的文件,则数据将被除法截断,例如假设您有一个名为 mytable 的表,其中包含两列 AutoID 和 fname。但是,您的文件只有一列和 20 行。在这种情况下,AutoID 是一个自动增量列。如果使用命令:

    LOAD DATA LOCAL INFILE 'c:\\myfile.csv' INTO TABLE mydatabase.mytable
    

    只会导入十行数据。原因是,mysql 假设您正在尝试将单列数据导入到两列数据中。但是,由于 AutoID 值是自动生成的,因此将丢弃要插入的值。为了解决这样的问题,我做了以下事情。我在 excel 中打开了 csv 文件,并在现有列的左侧添加了一个具有 NULL 值的列。我的 sql 语句最终变成了“”

    LOAD DATA LOCAL INFILE 'c:\\myfile.csv' INTO TABLE mydatabase.mytable FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
    

    我的文件看起来像:

    NULL, JAMES,
    NULL, JOHN,
    

    确保您的列值被正确分隔,即如果上述值是您想要导入 mysql 表的所有值。使用以下命令

    LOAD DATA LOCAL INFILE 'c:\\myfile.csv' INTO TABLE mydatabase.mytable FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
    

【讨论】:

以上是关于使用 phpmyadmin 将单列 csv 文件导入 mysql的主要内容,如果未能解决你的问题,请参考以下文章

读取单列 CSV 文件的更快方法

如何将 CSV 导入 phpMyAdmin?

使用 phpMyAdmin 将带有部分数据的制表符分隔的 csv 文件导入 mysql 表

通过phpmyadmin将csv文件导入mysql

无法将 CSV 导入 PhpMyAdmin

无法使用 phpmyadmin 向导将 csv 导入 mysql 数据库