提问人:Jury A 提问时间:10/6/2012 更新时间:1/26/2016 访问量:5552
如何将数据加载到mysql表中但忽略空行
How to load data into mysql table but ignore the blank lines
问:
我正在使用以下语句从文件中插入数据。
load data infile 'filename.csv'
ignore
into table tbl (clo);
我需要忽略文件中的空行。我该怎么做。
答:
-1赞
Rafe
10/6/2012
#1
LOAD DATA INFILE 'filename.csv'
INTO TABLE your_table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\r\n';
\r 在 Windows 文件上是必需的,如果您在 *nix 上运行它,则不需要它们。
评论
1赞
Jury A
10/7/2012
不起作用。给我一个语法错误。我需要完全按照我在声明中发布的顺序指定列(我需要在特定列中插入这些行)。
0赞
shrimpwagon
1/26/2016
@JuryA 是的,这并不能回答这个问题
1赞
shrimpwagon
1/26/2016
#2
您不能跳过行,除非它们位于文件的开头,您可以使用该选项。IGNORE N LINES
导入前使用 sed:
sed -i '/^\s*$/d' filename.csv
有关更多详细信息:使用 SED 删除空行
评论
1赞
TaW
1/26/2016
啊,更有帮助。永远记住:链接死了。
0赞
ebyrob
12/17/2017
如果我必须导入一个 10 gig 的文件,我真的不想对其进行预处理,但我想每次我想高效导入数据时,我都可以编写一个自定义程序......
评论