2010-12-03 75 views
0

我有一个csv文件,我很感兴趣,日期格式是20-Nov-2010我如何格式化它以插入到日期为字段的字段的mysql接受格式?格式日期字段类型

回答

0
date("Y-m-d", strtotime("20-Nov-2010")); 
0

Andreas的答案是有点简洁 - 在PHP中,这将返回它可以拼接 到你的查询字符串:

$d=date("Y-m-d", strtotime("20-Nov-2010")); 
$qry="INSERT INTO sometable (adate) VALUES('$d')"; 

但是,如果你省略了标点符号,可以广告它不报价:

$d=date("Ymd", strtotime("20-Nov-2010")); 
$qry="INSERT INTO sometable (adate) VALUES($d)"; 

这种方法的缺点是的strtotime()往往总是返回某种日期值的 - 有时你希望不是。

但是你可以做在MySQL的解析,这是很多更严格:

$d='20-Nov-2010'; 
$qry="INSERT INTO sometable (adate) VALUES(STR_TO_DATE($d, '%d-%b-%Y'))"; 

但要记住check for errors当MySQL试图解析日期。