我正在尝试将数据加载到数据库中。我唯一的问题是我得到一个错误1261.我之前得到了一个不正确的日期时间值错误但我用下面的加载数据infile中的代码解决了这个问题(设置date_time =)。我现在的问题是它说我没有足够的数据用于所有列。我知道你应该在表的名称之后命名列,但我似乎无法让它工作。
有一个表,它有15列。第一列是主键,另外14列是常规列。
这是加载文件声明:
load data infile 'c:/proj/test.csv' into table base (@var1,event,failure,ue,mc,mn,cell,durat,cause,ne,ims,hier,hier3,hier32)
set date_time = STR_TO_DATE(@var1, '%Y%m%d %H%i%s')
;
附加说明:pk列称为dataId,是一个INT 这是自动增量。
以下是来自csv文件的数据:
2013-03-20 14:55:22,4098,1,21060800,344,930,4,1000,0,11B,344930000000011,4809532081614990000,8226896360947470000,1150444940909480000
答案 0 :(得分:0)
试试这个
load data infile 'c:/proj/test.csv' into table base (@var1,event,failure,ue,mc,mn,cell,durat,cause,ne,ims,hier,hier3,hier32)
set date_time = STR_TO_DATE(@var1, '%Y%m%d %H%i%s')
character set latin1
fields terminated by '\t' enclosed by '' escaped by '\\'
lines terminated by '\n' starting by ''
ignore 1 lines;
查看here
答案 1 :(得分:0)
我也遇到了类似的问题。
错误消息是:
load data infile 'L:/new_ncbi' into table ncbi
fields terminated by '\t'
lines terminated by '\r\n' 1973 row(s) affected, 3 warning(s):
1261 Row 1629 doesn't contain data for all columns
1261 Row 1630 doesn't contain data for all columns
1261 Row 1630 doesn't contain data for all columns
Records: 1973 Deleted: 0 Skipped: 0 Warnings: 3 0.281 sec
所以我回来看看我加载的数据。 我在文件的第1639-1630行找到了这个问题:
Sphingomonas phage PAU NC_019521 "Sphingomonas paucimobilis
" species
是的,如你所见。
这两条线想成为一条线,但事实并非如此。
顺便说一句,我声明我的数据是由excel文件存储的。 当我需要处理我的数据时,我将我的数据从excel文件传输到普通文件。
excel文件中的一行数据将是两行,因为此行包含空格字符CRLF
或其他字符。
所以我建议您可以将数据从csv复制到普通文件,并检查是否有类似的问题。
也许我的英语不好,但我仍然希望能提供帮助。