Som angivet i dato og klokkeslæt :
MySQL genkender DATETIME
og TIMESTAMP
værdier i disse formater:
-
Som en streng i enten
'ÅÅÅÅ-MM-DD TT:MM:SS'
eller'ÅÅ-MM-DD TT:MM:SS'
format. En "afslappet" syntaks er også tilladt her:Ethvert tegnsætningstegn kan bruges som afgrænsning mellem datodele eller tidsdele. For eksempel'2012-12-31 11:30:45'
,'2012^12^31 11+30+45'
,'2012/12/31 11*30*45'
, og'[email protected] @31 11^30^45'
er ækvivalente. -
Som en streng uden skilletegn i hverken
'ÅÅÅÅMMDDHHMMSS'
eller'ÅÅMMDDHHMMSS'
format, forudsat at strengen giver mening som en dato. For eksempel'20070523091528'
og'070523091528'
tolkes som'2007-05-23 09:15:28'
, men'071122129015'
er ulovlig (den har en useriøs minutdel) og bliver'0000-00-00 00:00:00'
. -
Som et tal i enten
ÅÅÅÅMMDDHHMMSS
ellerÅÅMMDDHHMMSS
format, forudsat at tallet giver mening som en dato. For eksempel19830905132800
og830905132800
tolkes som'1983-09-05 13:28:00'
.
En DATETIME
eller TIMESTAMP
værdi kan omfatte en efterfølgende brøkdel af sekunder med op til mikrosekunders (6 cifre) præcision. Selvom denne brøkdel genkendes, kasseres den fra værdier gemt i DATETIME
eller TIMESTAMP
kolonner. For oplysninger om understøttelse af fraktioneret sekunder i MySQL, se afsnit 11.3.6, “Fraktionel Sekunder i tidsværdier"
.
Din dato er '2012-08-24T17:29:11.683Z'
passer ikke til nogen af disse formater; foreslå dig enten—
-
brug i stedet Node.js Date-objektets
toLocaleFormat()
metode (sørg for, at tidszonen for MySQL-forbindelsen matcher den for Node.js's lokalitet):if s instanceof Date return s.toLocaleFormat("%Y-%m-%d %H:%M:%S")
-
brug Node.js Date-objektets
valueOf()
metode til at få tidens værdi i millisekunder siden UNIX-epoken divideres med1000
(for at få sekunder siden UNIX-epoken) og gå gennem MySQL'sFROM_UNIXTIME()
funktion.