如何使用字符串内的引号将数据从CSV导入MySQL?

时间:2015-10-04 09:54:28

标签: mysql csv

现在我的csv采用以下形式:

  

pubID,pubKey,title,year

csv

我正在使用此查询加载到MySQL中:

SET NAMES utf8;
LOAD DATA INFILE 'C:/Users/AllanPC/Desktop/csv/Publication.csv' 
INTO TABLE publication 
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'

现在的问题是并非csv中的所有数据都被加载到mysql中。

此问题是由csv条目引起的,例如:

1096, journals/acta/LescanneP12,"Backward" coninduction~ Nash equilibrium and the rationality of escation., 2012

哪里处理引号“”会导致加载中出现问题?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您已定义

ENCLOSED BY '"'

在您的查询中,但您没有将您的字符串包含在CSV中。你将不得不逃避你的"在你的文件中,用"。

将你的字符串括起来

我认为你的行应该与

类似
1096, "journals/acta/LescanneP12","\"Backward\" coninduction~ Nash equilibrium and the rationality of escation.", 2012

最后。您可以尝试将ENCLOSED BY重置为更合适的值,例如空。