Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was ist das richtige DateTime-Format für die MySQL-Datenbank?

F: Was ist das richtige Format/der richtige Wert für DATETIME Literal innerhalb einer MySQL-Anweisung?

A: In MySQL das Standardformat für ein DATETIME wörtlich ist:

 'YYYY-MM-DD HH:MI:SS'

mit der Zeitkomponente als 24-Stunden-Uhr (d. h. die Stundenziffern werden als Wert zwischen 00 und 23 bereitgestellt).

MySQL bietet eine eingebaute Funktion STR_TO_DATE die Zeichenfolgen in verschiedenen Formaten in DATE umwandeln kann oder DATETIME Datentypen.

Alternativ können Sie also auch den Wert eines DATETIME angeben mit einem Aufruf dieser Funktion wie folgt:

STR_TO_DATE('12/21/2012 1:13:58 PM','%m/%d/%Y %h:%i:%s %p')

Sie könnten also MySQL die Konvertierung im INSERT für Sie erledigen lassen -Anweisung, wenn Ihre VALUES Liste sah so aus:

... VALUES ('@stockID', STR_TO_DATE('@dateUpdated','%m/%d/%Y %h:%i:%s %p');

(Mir ist aufgefallen, dass zwischen den beiden Literalen in Ihren VALUES ein erforderliches Komma fehlt Liste.)

MySQL erlaubt einen gewissen Spielraum bei den Trennzeichen zwischen den Teilen von DATETIME buchstäblich, daher sind sie nicht unbedingt erforderlich.

MySQL 5.5-Referenzhandbuch.