MySQL 仅从 CSV 导入单行

Posted

技术标签:

【中文标题】MySQL 仅从 CSV 导入单行【英文标题】:MySQL only imports a single row from CSV 【发布时间】:2010-11-19 02:10:00 【问题描述】:

开发机器是Mac。我在将多行从 CSV 导入 mysql 时遇到了一些麻烦。这是我的 SQL 语句:

LOAD DATA LOCAL INFILE 'test.csv' 
INTO TABLE students
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(pita, dob, name, grd, asst, loc);

它运行良好,但只导入了一条记录。知道我哪里出错了吗?

【问题讨论】:

【参考方案1】:

检查行尾:

head -n2 sql.sql | hexdump -C

但最常见的问题,行终止符不是您所期望的,请尝试:

LINES TERMINATED BY '\r'

【讨论】:

+1。 Mac 的换行符是回车符,而不是换行符。 谢谢你,Mark L 和 BipedalShark!就是这样。 非常感谢。你让我开心! 同样的事情发生在我身上。事实证明 Mac 使用 '\n' 作为行终止符,但是在 mysql 中我必须使用 '\r' 正确导入我的所有记录。这太奇怪了,我猜mysql在读取csv时替换了那些字符。

以上是关于MySQL 仅从 CSV 导入单行的主要内容,如果未能解决你的问题,请参考以下文章

如何仅将表结构从 csv 文件导入 Access

怎么把csv文件导入mysql

如何将csv导入mysql和mysql导出csv

如何把csv文件批量导入到mysql数据库

mysql 表导入向导无法导入 csv 文件

使用导入向导导入 CSV 时 MYSQL 崩溃