Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Как хранить статусы? [2]
Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011 Откуда: Беларусь
Помог: 69 раз(а)
_Dark_ я тебе говорю о той самой читаемости и культуре, когда указывая размер, ты даешь понять хотя бы самому себе, что заносится в базу не 0-255, а 0-9
я указываю размер, считаю это правильным, и думаю это кому-то поможет, и у меня у самого в голову не придет, в размер 1 записывать 255
----- То что программа работает, не означает что она написана правильно!
_Dark_
Отправлено: 08 Мая, 2013 - 18:02:13
Частый гость
Покинул форум
Сообщений всего: 231
Дата рег-ции: Окт. 2011
Помог: 5 раз(а)
[+]
KingStar пишет:
_Dark_ я тебе говорю о той самой читаемости и культуре, когда указывая размер, ты даешь понять хотя бы самому себе, что заносится в базу не 0-255, а 0-9
Сомнительный способ документации.
Все равно, что не резать бумагу, а отмечать место предполагаемого разреза линией.
Что же, ваше право.
И все таки из-за такой "культуры" складываются определенные стереотипы.
Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011 Откуда: Беларусь
Помог: 69 раз(а)
_Dark_ зато хотя бы ты будешь знать где её резать, а не задаваться вопросом, а нужно ли её вообще резать (Добавление)
ушел, холивар окончен, приятно было познакомится!
----- То что программа работает, не означает что она написана правильно!
avtor.fox
Отправлено: 08 Мая, 2013 - 19:25:44
Постоянный участник
Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012 Откуда: Воронеж
Помог: 50 раз(а)
KingStar вернулся, поругался и доволен остался
А по теме. Лучше хранить числовые значения статуса в базе, так как работать с ними будет проще. А по поводу типа - Вам уже нахоливарили тут)
Tsigyr
Отправлено: 08 Мая, 2013 - 19:29:45
Гость
Покинул форум
Сообщений всего: 83
Дата рег-ции: Май 2013
Помог: 0 раз(а)
avtor.fox, а вы что посоветуете насчет типа? Как по мне то в int..
avtor.fox
Отправлено: 08 Мая, 2013 - 19:38:41
Постоянный участник
Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012 Откуда: Воронеж
Помог: 50 раз(а)
Tsigyr, я не СИКЬЮЭЛЬЩИК, но однозначно выбор падает на int или tinyint.
он себя узнает пишет:
Помним/знаем о том, что set — битовая маска, может одновременно хранить несколько значений?
Эквивалент для tinyint — enum. (ну или set, но тогда с реализацией битовой маски, иначе зачем было set'ом делать?)
Если значение в 1 момент времени может быть только одно — enum.
Если несколько — set.
Просто потому, что текстовое представление легче воспринимается, чем числовое.
Все трое на идентичных диапазонах данных занимают равное место. dev.mysql.com/doc/refman/5.1/en/storage-requirements.html
и
некто пишет:
Я бы не мелочился, тем более что int писать быстрее.
В скорости выигрыша не будет, только в обьеме (2 байта на запись).
Если таблица большая ( > 10 ^ 6) и полей таких больше 2-х и они индексированы, может и есть смысл.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.