我正在使用加载数据填充功能将一个简单的CSV文件加载到MySQL数据库中,使用。。。

LOAD DATA INFILE '../../htdocs/aspens/files/thefile.csv'
                INTO TABLE students
                FIELDS TERMINATED BY ','
                ENCLOSED BY '\"'
                LINES TERMINATED BY '\n'
                IGNORE 1 ROWS;

查询成功地工作,并为我提供了下表。。。
+----------------+---------+
| student_name   | class   |
+----------------+---------+
 |Aaaaaaaaa aaaa | Year 1
 |Bbbb Bbbbbb    | Year 2
 |Cccc Ccccccc   | Year 3
 |Ddddddd Dddddd | Year 4
| Eeee Eeeee     | Year 4  |
+----------------+---------+

当我试图搜索这个数据库时,我只能搜索插入的最后一行,这与表的总行数无关,它只是我能够搜索的最后一行。
例如。。
SELECT * FROM students;

为我制作上面的表格。
但是,如果我做以下的事。。。
SELECT * FROM students WHERE class='Year 4";

只有最后一个条目出现了,如果我出现了
SELECT * FROM students WHERE class='Year 3";

该表不返回任何内容,这包括如果我使用LIKE '"%Year 4%"'
我假设我行中的缩进暗示了这里可能出了什么问题,但是phpadmin中的一切看起来都很好?
编辑:
CSV文件如下。。
Student Name,Class Name
Aaaaaaaaa aaaa,Year 1
Bbbb Bbbbbb,Year 2
Cccc Ccccccc,Year 3
Ddddddd Dddddd,Year 4
Eeee Eeeee ,Year 4

最佳答案

正如Danijel指出的,由于csv文件是在Windows系统上生成的(在我的例子中,是在Mac上生成的,但使用的是Microsoft Excel),我需要考虑回车。
Unix使用
Mac只使用回车符\r
Windows使用

关于php - 除最后一行外,MySQL行是否缩进且不可搜索? (加载数据文件),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44202267/

10-13 08:11
查看更多