我有一个CSV文件,格式如下:
app/models
我想将这个CSV文件导入Mysql表" movieGenres"它有2列" movieId"和#34;类型"。所以,我需要在下表中得到结果:
"movieId";"Genre"
"tt0111161";"Drama","Crime"
"tt0468569";"Action","Drama","Crime"
"tt0021331"
"tt1853728";"Western"
问题是当我尝试导入时,它会在显示错误后停止一段时间:"行中的列数无效..."。 这是因为当它到达只有一列的行时,它会停止(就像我的例子中的第3部电影,因为有些电影没有流派)。
我真的不知道如何解决这个问题。有人可以帮助我吗?
谢谢,
答案 0 :(得分:0)
您可以在将第二列插入数据库之前检查第二列的值,如下例所示:
#table: example
col-1 col-2 col-3 col-4
LOAD DATA INFILE ‘path/to/example.csv’ INTO TABLE example FIELDS TERMINATED BY ‘,’ LINES TERMINATED BY ‘\n’ IGNORE 1 LINES (col-1,col-2,col-3, @var1) SET col-4 = CASE WHEN @var1 IS NOT NULL
THEN @var1
ELSE NULL
END