sql >> Databáze >  >> RDS >> Mysql

Jak uložit datum a čas v MySQL s informacemi o časovém pásmu

Řekl jsi:

Chci, aby vždy vycházely jako tanzanský čas a ne v místních časech, ve kterých jsou různí kolaboranti.

Pokud je to váš případ, pak byste neměli používat UTC. Vše, co musíte udělat, je použít DATETIME zadejte MySQL místo TIMESTAMP typ.

Z dokumentace MySQL :

MySQL převádí TIMESTAMP hodnoty z aktuálního časového pásma do UTC pro uložení a zpět z UTC do aktuálního časového pásma pro načtení. (U jiných typů, jako je DATETIME, k tomu nedochází .)

Pokud jste již pomocí DATETIME zadejte, pak jej nesmíte nastavovat podle místního času. Budete se muset méně soustředit na databázi a více na kód aplikace – což jste zde neukázali. Problém a řešení se budou drasticky lišit v závislosti na jazyku, takže nezapomeňte označit otázku příslušným jazykem kódu vaší aplikace.



  1. SCD typ 4

  2. Použití automatizace k urychlení testů vydání na PostgreSQL

  3. Vypršel časový limit připojení pro SQL server

  4. Jak zaokrouhlit číslo na nejbližší celé číslo v SQL