после 2038 года тем, кто использует формат поля int для хранения даты из функции time() крышка
21 Янв 2013, 18:52Виктор, к тому времени мы, скорее всего забудем что такое 'mysql' и 'php' =))
03 Фев 2013, 17:37Я вот как раз сейчас озадачен этим вопросом.
До этого использовал int, после прочтения топика пожалуй продолжу его использовать.
int создан для чиел, для дат есть другие варианты.
хотя пользуйтесь int, чтобы ваш уровень всегда могли отличить с первого взгляда
timestamp
Самый верный метод...
добавлено спустя 2 минуты:
EmptyZero пишет:
"Поверьте, с помощью TIMESTAMP вы избежите от реализации многих велосипедов"
Пока это сами не поймут, так и будут int, int, int...
Я уже как несколько лет последних всегда использую timestamp...
Fernus, А в чем его преимущество?
Я вот, например, все же решил использовать DATETIME поскольку он мне показался наиболее подходящим.
Я тут немного почитал об этом и сделал некоторые выводы.
int - следует использовать в случае возможности переноса БД на другую СУБД, для сохранения совместимости. Поскольку в других СУБД может не оказаться типа DATATIME или TIMESTAMP.
TIMESTAMP хорош следующим:
Основное удобство использования
типа TIMESTAMP состоит в том, что
для столбцов этого типа в таблицах
можно задавать значение по
умолчанию в виде подстановки
текущего времени, а так же установки текущего времени при
обновлении записи.
(с)Хабр
Вот только у этого типа есть один незначительный минус — диапазон значений:
1970-01-01 00:00:00 — 2038-12-31 00:00:00
В общем, лично для себя я сделал выбор в пользу DATETIME, хотя, скорей всего, параллельно к нему буду использовать TIMESTAMP
я думаю к тому времени как наступит 2038 год уже выйдет пхп 20 и мускул стописят(или вообще другой драйвер) и там уже вообще ни инт ни datatime не будет . исходя из этого да и вообще врядли мой скрипт проживет столько времени я его успею 100 раз переписать или новый написать или забью на все это дело вот если бы сказали что через пару лет инт с датой сломаются − я б уже начал шевелиться. а так...
22 Фев 2013, 2:03