Mysql
 sql >> Baza danych >  >> RDS >> Mysql

DATETIME VS INT do przechowywania czasu?

Nie użyłbym INT lub TIMESTAMP aby zapisać wartości daty i godziny. Istnieje "Problem w roku 2038" ! Możesz użyć DATETIME i zapisuj swoje daty i godziny przez długi czas.

Z TIMESTAMP lub liczbowych typów kolumn można przechowywać tylko zakres lat od 1970 do 2038. Z DATETIME wpisz, możesz zapisać daty z latami od 1000 do 9999.

nie jest zalecane jest używanie kolumn typu numerycznego (INT ) do przechowywania informacji o dacie i godzinie. MySQL (i inne systemy również) udostępnia wiele funkcji do obsługi informacji o dacie i godzinie. Funkcje te są szybsze i bardziej zoptymalizowane niż funkcje lub obliczenia niestandardowe:https://dev.mysql.com/doc/refman/5.7/en/data-i-godzina-funkcje.html

Aby przekonwertować strefę czasową przechowywanej wartości na strefę czasową klienta, możesz użyć CONVERT_TZ . W takim przypadku musisz znać strefę czasową serwera i strefę czasową swojego klienta. Aby uzyskać strefę czasową serwera, możesz zobaczyć kilka możliwości na to pytanie .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wyszukiwanie z rozróżnianiem wielkości liter w Django, ale ignorowane w Mysql

  2. Zapytanie MySql do pobrania wartości atrybutu elementu xml

  3. Wybierz, jeśli istnieje jeszcze wstawić?

  4. Funkcja MySQL ABS() – zwraca wartość bezwzględną liczby

  5. MySql.Data.MySqlClient.MySqlException:„Lokalny host hosta nie obsługuje połączeń SSL”.