V: Wat is de juiste notatie/waarde voor DATETIME
letterlijk in een MySQL-statement?
A: In MySQL, het standaardformaat voor een DATETIME
letterlijk is:
'YYYY-MM-DD HH:MI:SS'
met de tijdcomponent als een 24-uursklok (d.w.z. de urencijfers die worden opgegeven als een waarde tussen 00 en 23).
MySQL biedt een ingebouwde functie STR_TO_DATE
die strings in verschillende formaten kan converteren naar DATE
of DATETIME
datatypes.
Als alternatief kunt u dus ook de waarde van een DATETIME
. specificeren met een aanroep van die functie, als volgt:
STR_TO_DATE('12/21/2012 1:13:58 PM','%m/%d/%Y %h:%i:%s %p')
U kunt MySQL dus de conversie voor u laten doen in de INSERT
verklaring, als uw VALUES
lijst zag er als volgt uit:
... VALUES ('@stockID', STR_TO_DATE('@dateUpdated','%m/%d/%Y %h:%i:%s %p');
(Ik zie dat er een verplichte komma ontbreekt tussen de twee letterlijke waarden in uw VALUES
lijst.)
MySQL staat enige speelruimte toe in de scheidingstekens tussen de delen van de DATETIME
letterlijk, dus ze zijn niet strikt vereist.
MySQL 5.5 Referentiehandleiding.