sql >> Database teknologi >  >> NoSQL >> MongoDB

Når MongoDB indsætter en dato, konverterer den den til UTC

Du tror måske, at din dato er i UTC, i modsætning til en lokal dato, der kræver en UTC-forskydning. Men det er ikke i overensstemmelse med ISO 8601 internationale standard, når det handler om tidszoner. Når du vil angive en tidszone, skal du bruge en tidszonebetegnelse. MongoDB gemmer datoer i UTC-format, og ISO kræver en tidszonebetegnelse på "Z" for at repræsentere UTC-tid.

For at præcisere tingene for dig, i forhold til ISO 8601, er tiden nedenfor ikke gemt i UTC-tid. Dette er gemt i Paris, Frankrig lokal tid med UTC offset på + 1 time.

1997-07-16T19:20:30.45+01:00

Dette nedenfor er gemt i UTC-tid som angivet af Z. Der kræves derfor ingen + offset.

2019-08-01T23:00:34.655Z

MongoDB gemmer datoer som følger:

ISODate("2019-08-05T02:50:49.637Z")

ISODate() er en hjælpefunktion, der er indbygget i MongoDB og omslutter det oprindelige JavaScript Date-objekt.



  1. Hvordan fjernforbindelse til min MongoDB på min server med java?

  2. MongoDB bind_ip fejl:bind() mislykkedes errnr:99 Kan ikke tildele den anmodede adresse til socket

  3. tekstindeks påkrævet for $text-forespørgsel

  4. Kan mongodb bruges som en indlejret database?