2010-12-03 5 views
0

J'ai un fichier csv qui m'intéresse et le format de date est 20-Nov-2010 comment puis-je le formater pour l'insertion dans un format accepté mysql pour un champ avec Date comme type?Format Date type de champ

Répondre

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

La réponse de Andreas est un peu laconique - en PHP cela retourne une chaîne que vous pouvez raccorder dans votre requête:

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

Mais si vous omettez la ponctuation, vous pouvez annonce sans les citations:

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

Un inconvénient de cette approche est que strtotime() a tendance à revenir toujours une sorte de valeur de date - et parfois pas ce que vous attendez.

Cependant, vous pouvez faire l'analyse syntaxique dans MySQL, ce qui est beaucoup plus stricte:

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

Mais souvenez-vous check for errors lorsque MySQL essaie d'analyser la date.