1. Виджет от картика тут не причем! Поля в базе могут отличаться сильно от визуализации и использований.
2. Смотря для каких целей вам нужно использовать дату.
TIMESTAMP - это 4 байта
DATETIME - это 8 байтов
Временные метки также легче в базе данных и быстрее индексируются.
Тип
DATETIME используется, когда вам нужны значения, которые содержат как дату, так и время. MySQL извлекает и отображает значения
DATETIME в формате «ГГГГ-ММ-ДД ЧЧ: ММ: СС». Поддерживаемый диапазон: от
1000-01-01 00:00:00 до
9999-12-31 23:59:59.
Тип
TIMESTAMP имеет диапазон от
1970-01-01 00:00:01 UTC до
2038-01-09 03:14:07 UTC. Он имеет различные свойства в зависимости от версии MySQL и режима SQL, в котором работает сервер.
DATETIME является постоянным, в то время как
TIMESTAMP определяется настройкой
time_zone.
Я принимаю это решение на семантической основе.
Я использую
метку времени (TIMESTAMP), когда мне нужно записать (более или менее)
фиксированный момент времени. Например, когда запись была вставлена в базу данных или когда произошло какое-либо действие пользователя.
Я использую
поле даты и времени (DATETIME), когда дата и время могут быть установлены и изменены произвольно. Например, когда пользователь может позже сохранить изменения.
СТАТЬЯ НА ТЕМУ