web-dev-qa-db-fra.com

Comment insérer une date personnalisée dans le champ d'horodatage mysql?

J'ai essayé d'insérer une chaîne de date et d'heure formatée dans le champ d'horodatage mysql en utilisant les deux méthodes suivantes, mais les deux me montrent 0000-00-00 00:00:00

INSERT INTO test VALUES ( UNIX_TIMESTAMP('2013-08-05 18:19:03') )
INSERT INTO test VALUES ( UNIX_TIMESTAMP(STR_TO_DATE('2013-08-05 18:19:03', '%Y-%m-%d %H:%i:%s')) )

Je crois que le premier devrait fonctionner comme je m'y attendais, mais je ne sais pas pourquoi l'analyse de la date et de l'heure ne se fait pas.

25
Maximus

Le problème est que votre champ est défini comme TIMESTAMP mais UNIX_TIMESTAMP Renvoie un int. Utilisez à la place INSERT INTO test VALUES ('2013-08-05 18:19:03' ).

32
SaganRitual