Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

DATETIME VS INT para armazenar o tempo?


Eu não usaria INT ou TIMESTAMP para salvar seus valores de data e hora. Existe o "Year-2038-Problem" ! Você pode usar DATETIME e salve seus datetimes por um longo tempo.

Com TIMESTAMP ou tipos de colunas numéricas, você só pode armazenar um intervalo de anos de 1970 a 2038. Com o DATETIME tipo você pode salvar datas com anos de 1000 a 9999.

Ele não é recomendado usar um tipo de coluna numérica (INT ) para armazenar informações de data e hora. O MySQL (e outros sistemas também) fornece muitas funções para lidar com informações de data e hora. Essas funções são mais rápidas e otimizadas do que funções ou cálculos personalizados:https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html

Para converter o fuso horário do seu valor armazenado para o fuso horário do cliente, você pode usar CONVERT_TZ . Nesse caso, você precisa saber o fuso horário do servidor e o fuso horário do seu cliente. Para obter o fuso horário do servidor, você pode ver algumas possibilidades em esta pergunta .