2011-04-25 116 views
0

目前有:LOAD DATA LOCAL INFILE '/Users/RkG/Desktop/Microblogs.csv' INTO TABLE blogs导入到MySQL通过.csv文件

import

这是数据即时试图导入的例子。 img2

img3

,最后的影像是我跑的查询和第二个图像的结果是表的结构,为什么没有导入“创建的”,“位置”的截图,和'文字'?

通过尝试下面给出的方法,我给这个输出:我该如何解决这个日期格式? img

PLAINTEXT:

3,5/18/2011 13:26,42.22717 93.33772,this convention filled with technology could be better don't plan on leaving anytime soon 
3,5/10/2011 9:22,42.18881 93.35642,4 orang top scorer skrg 3 di antara nya pake adidas F50 adizero Lightest fastest deadliest. 
3,5/14/2011 9:22,42.22479 93.35922,Nike 'gana' el Mundial al patrocinador oficial Adidas // y eso que sus figuras fueron un fracaso rotundo... 
3,5/6/2011 9:22,42.2469 93.32527,Positiiff mau nabung beli kaos adidas aslii muller .. * basii bgt baru nabung skrg ya hahaha 
+0

5/7/11 2:50似乎是一个日期时间。你想只加载日期部分?此外,您必须在加载数据中使用set语法才能以正确的格式转换此字符串。 – 2011-04-25 22:44:42

+0

你能举一个代码示例吗? – Jshee 2011-04-25 22:46:54

+0

当你回答我以前的问题时,我会尝试发布代码:)此外,如果您将3或4行csv作为纯文本而不是图像发布,这将非常有用。通过这种方式,我们可以更快地尝试代码。 – 2011-04-25 22:48:16

回答

0

假设你从日期更改created_at为datetime这将给你一个想法。 根据需要调整日期修饰符(我不知道字符串中的日期和月份顺序)。

load data local infile '/Users/RkG/Desktop/Microblogs.csv' 
into table blogs 
fields terminated by ',' 
lines terminated by '\n' 
(id,@created_at,location,text) 
set created_at = str_to_date(@created_at,'%c/%d/%Y %k:%i') 

如果最后一行没有为你工作,请参阅:

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_str-to-date

+0

这适用于一切,免除日期字段,它使所有日期字段为空....任何原因为什么 – Jshee 2011-04-26 23:28:45

+0

您需要更改为最后一行,如'set created_at = str_to_date(@created_at,'%y- %m-%d%h:%i')'。可能需要进行一些实验才能做到正确。 – Johan 2011-04-26 23:34:47

+0

@ user700070:我已经要求您以纯文本格式发布某行。你想存储什么?只有约会和删除时间部分或什么?请更具体地为了有一个正确的答案。 – 2011-04-26 23:40:53