Diskuze: mysql - uložení unixtimestampu
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.
https://dev.mysql.com/…atetime.html
DATE, DATETIME, and TIMESTAMP
https://dev.mysql.com/…e-types.html
DATE, TIME, DATETIME, TIMESTAMP, and YEAR
DATETIME '0000-00-00 00:00:00'
TIMESTAMP '0000-00-00 00:00:00'
Ahoj,
za desetinnou tečkou jsou uvedeny mili a mikrosekundy před klasicky datum a
čas. Spíše záleží na tobě, jakou přesnost potřebuješ uchovávat. Pro
většinu použití dle mne dostačují sekundy.
Jak uchovávat se odvíjí od toho jak s daty pracuješ a kolik jich je. Pokud
relativně málo, bude se ti lépe pracovat s formátem DATE TIME. Pokud bys
měl miliony záznamů, třeba nějaké logy tam by za zvážení stál spíše
ten INT případně oba, aby nebylo potřeba tolikrát konverze.
Podobně problém jsem řešil u IPv4, pro kterou v databázi nebyl vhodný
datatyp. Záznamů bylo řádově statisíce. Takže pro uživatele human
readable format ve varchar, pro interní potřeby kódu int. Existují sice
funkce pro převody jak v DB tak třeba v PHP, ale to se mi na dané databázi a
struktuře výkonově neosvědčilo.
Zobrazeno 4 zpráv z 4.