Mysql Load-data-infile 文件,每一行只有一个封闭的字符串

Mysql Load-dta-infile file having only one enclosed string in each line

我的文本文件只有一个字符串,每一行都用“”括起来,而我正在将此文件加载到 table 但它没有将 \r\n 识别为换行符.如果我在一行中有两列(“”,整数),它工作正常。

包含如下数据的文本文件:

"gmail.com"
"facebook.com"
"yahoo.com"
"goindigo.com"
"snapdeel.com"
"flipkart.com"
"ebay.com"
"godady.com"
"twiter.com"  
"gmail.com"
"facebook.com"
"yahoo.com"
"goindigo.com"
"snapdeel.com"
"flipkart.com"

我正在尝试使用 Query

将此文件加载到 Table
Load Query: load data local infile 'file.LOG' into table table_name fields terminated by '  ' enclosed by '"' (column);

这里终止的字段是“\t”

正在加载到 table 中:

INSERT INTO table_name VALUES ('\"gmail.com\"\r\n\"facebook.com\"\r\n\"yahoo.com\"\r\n\"goindigo.com\"\r\n\"snapdeel.com\"\r\n\"flipkart.com\"\r\n\"ebay.com\"\r\n\"godady.com\"\r\n\"twiter.com\"\r\n\"gmail.com\"\r\n\"facebook.com\"\r\n\"yahoo.com\"\r\n\"goindigo.com\"\r\n\"snapdeel.com\"\r\n\"flipkart.com\"\r\n\');

整个文件作为一行加载。

您应该添加

 LINES TERMINATED BY '\r\n'

您的 "LOAD DATA INFILE " 查询

这样就可以了:

LOAD DATA INFILE 'C:\test.csv' INTO TABLE test 
FIELDS TERMINATED BY '\t' 
LINES 
STARTING BY "\""
TERMINATED BY "\""
(col1)
; 

I found that if enclosed by(") followed by new line LOAD DATA INFILE query will not identifies the new line character by default we have to mention LINES TERMINATED BY field then only it will identifies the new line character.