Тип даты

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
Аватара пользователя
Maximilian
Сообщения: 52
Зарегистрирован: 2010.02.12, 00:36
Откуда: Днепропетровск

Тип даты

Сообщение Maximilian »

Кто в чем хранит даты? Где-то уже видел обсуждение, найти не могу. integer, timestamp, datetime?
Что кому предпочтительнее для запросов SQL, для самого PHP. Кто с чем вообще предпочитает работу - с SQL или PHP?

Задачи примерно такие:
- дата действия (относительно текущей),
- разбор в различных форматах записи (31-12-2009 17:26:45 , 2009/12/31 pm 05/26/45 и т.д.),
- выбор пользователей по дате (периоду) регистрации.
- выбор типа для дня рождения (тут integer не нужен).

Короче, абстрактный тривиальный вопрос, но достаточно щекотливый...
Требования террористов о выкупе выполнены: террористы выкупаны и уложены баиньки :)
Аватара пользователя
Maximilian
Сообщения: 52
Зарегистрирован: 2010.02.12, 00:36
Откуда: Днепропетровск

Re: Тип даты

Сообщение Maximilian »

Если integer или timestamp, кто-нибудь думает о 2038 годе или пока не актуально? Я имею в виду максимальное значение 2147483647 секунд...
Требования террористов о выкупе выполнены: террористы выкупаны и уложены баиньки :)
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Тип даты

Сообщение samdark »

Рановато думать. Если проект до него дорастёт, ради него не страшно будет и конвертировать базу.
Аватара пользователя
Maximilian
Сообщения: 52
Зарегистрирован: 2010.02.12, 00:36
Откуда: Днепропетровск

Re: Тип даты

Сообщение Maximilian »

А в чем все-таки больше храните даты, в integer или datetime (timestamp воспринимаю как integer)? Integer не совсем удобен для SQL. Там почти все функции на datetime завязаны.
Требования террористов о выкупе выполнены: террористы выкупаны и уложены баиньки :)
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Тип даты

Сообщение samdark »

Я в integer.
Аватара пользователя
Maximilian
Сообщения: 52
Зарегистрирован: 2010.02.12, 00:36
Откуда: Днепропетровск

Re: Тип даты

Сообщение Maximilian »

Тогда и работаете больше с PHP и Yii, чем с SQL. По идее... Правильно понимаю?
Требования террористов о выкупе выполнены: террористы выкупаны и уложены баиньки :)
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Тип даты

Сообщение samdark »

В плане дат — да.
Аватара пользователя
Maximilian
Сообщения: 52
Зарегистрирован: 2010.02.12, 00:36
Откуда: Днепропетровск

Re: Тип даты

Сообщение Maximilian »

Конечно в плане дат, о них речь. 8-)
Требования террористов о выкупе выполнены: террористы выкупаны и уложены баиньки :)
pirrat
Сообщения: 193
Зарегистрирован: 2009.04.03, 09:41

Re: Тип даты

Сообщение pirrat »

Практически всегда datetime (date).
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Тип даты

Сообщение Ozzy »

datetime конечно

это всегда удобнее в будущем всяким Васям которые лезут через phpmyadmin в базу и нормально видят дату регистрации пользователя и тп, а не дергают меня постоянно что у них там в дате 123412322 :) так что для удобства клиентов - всегда дататайм :)
Мой маленький блог - http://dbhelp.ru
keltanas
Сообщения: 39
Зарегистрирован: 2009.07.15, 10:19
Откуда: Санкт-Петербург
Контактная информация:

Re: Тип даты

Сообщение keltanas »

Статья на тему

В общем, если надо текущее время сохранить, время добавления сообщения или еще что подобное, то пользуйтесь TIMESTAMP
Ибо т.о. вы получите автоматическое преобразование локалей и поле в 4 байта

или UNIX_TIMESTAMP в поле INT, тогда преобразования можно производить в PHP (тоже 4 байта)

Если надо какую-то историческую дату сохранить, дату рождения и пр, то DATETIME, т.к. оно храниться в виде, как есть и у него очень большой диапазон (и 8 байт)
keltanas
Сообщения: 39
Зарегистрирован: 2009.07.15, 10:19
Откуда: Санкт-Петербург
Контактная информация:

Re: Тип даты

Сообщение keltanas »

Ozzy писал(а):datetime конечно

это всегда удобнее в будущем всяким Васям которые лезут через phpmyadmin в базу и нормально видят дату регистрации пользователя и тп, а не дергают меня постоянно что у них там в дате 123412322 :) так что для удобства клиентов - всегда дататайм :)
Что-то мне кажется, что людям, которые сами не могут перевести эту дату в то, что хотят увидеть, делать в базе данных через PMA нечего.
Я надеюсь, что у Вас не интерфейс админки состоит из PMA ? :lol:
Ответить