3

我有一个需要导入 MySQL 表的文件。这是我的命令

LOAD DATA LOCAL INFILE 'C:\test.csv'
INTO TABLE logs
fields terminated by '|'
LINES terminated BY '\n'

这在 Windows 中看起来不错,但在 Linux 中它只插入第一行并在日志文件中生成错误

LOAD DATA LOCAL INFILE '/home/myuser/test.csv'
INTO TABLE logs
fields terminated by '|'
LINES terminated BY '\n'

我需要在 Linux 中进行哪些更改?

4

2 回答 2

1

我已经使用 mysql 5.6.17 在 Windows 8.1 中测试了这个“LOAD DATA INFILE”。下面是表格格式

+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+ 
| id        | int(11)     | NO   | PRI | NULL    | auto_increment |
| charactor | varchar(30) | YES  |     | NULL    |                |
| movie     | varchar(30) | YES  |     | NULL    |                |
+-----------+-------------+------+-----+---------+----------------+

LOAD DATA LOCAL INFILE 'C:/Users/kaviranga/Desktop/scifi.csv' INTO TABLE scifi FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 0 LINES (charactor,movie);

这工作得很好,我使用的 csv 文件格式如下

"Soldier 2","Pirates of the Carribian 2"
"Soldier 1","Pirates of the Carribian 4"

不要像下面这样使用它可能会导致错误。

'C:\Users\kaviranga\Desktop\scifi.csv'

我已包含此答案以供将来参考。

于 2016-09-21T09:37:24.897 回答
0

尝试

LINES terminated by '\r\n'

在 Linux 机器上。

于 2013-06-07T08:15:34.053 回答