|
|
|
| Как лучше в базе хранить сабж?
тоесть сейчас я например делают так, поле, скажем, дата:
первый логин*последний логин;
а уже в пхп explode и вывожу.
Не вижу смысла создавать пицот колонок для такого..
но и проблема возникает при сортировке ORDER...
Мб есть какойто поудобнее способ или хотябы возможно у mysql есть своя explode? | |
|
|
|
|
|
|
|
для: sl1p
(26.10.2008 в 02:56)
| | Ничего не понял. В чем заключается проблема? | |
|
|
|
|
|
|
|
для: cheops
(26.10.2008 в 09:51)
| | я храню в одном поле несколько значений. Ибо они относятся по смыслу к одному и тому же и дабы не создавать кучу столбцов что имхо есть не очень хорошо, я записываю в поле значение типа так:
"1^2^3^4^5", и запоминаю что где, тоесть скажем первое значение это дата первого логина, второе последнего и т.д.
потом когда мне нужно какоето из них прочитать я в пхп дёргаю весь этот столбец и с помощью explode разбиваю в массив. ну и потом уже по "запомненному" читаю\перезаписываю.
Ну или может так понятней будет
есть столбец e-mail
и в форме есть галочка скрыть\показать гдето там на странице где выводится этот самый эмейл..
и чтобы не создавать этот ненужный столбец я записываю так:
email@example.com^0
что значит эмейл скрыт, 1- показать. | |
|
|
|
|
|
|
|
для: sl1p
(26.10.2008 в 12:00)
| | >я храню в одном поле несколько значений. Ибо они относятся по смыслу к одному и тому же и дабы не создавать кучу столбцов что имхо есть не очень хорошо, я записываю в поле значение типа так:
>"1^2^3^4^5", и запоминаю что где, тоесть скажем первое значение это дата первого логина, второе последнего и т.д.
В одном поле несколько значений не хранят.
Если это значения разного смысла (как, например, first_login и last_login) - их хранят в разных столбцах.
Если это значения равного смысла - их держат в одном столбце, а следовательно, хранят в разных строках другой, связанной таблицы, описывающей эту, связанную с основной, сущность.
В некоторых, крайне редких ситуациях, когда работа с отдельными элементами хранимого массива требуется лишь от случаая к случаю, такие данные хранят как множество (обычно в поле типа SET или в виде строки с разделителем "запятая"). И хотя пара встроенных функций у MySQL для работы с такими данными имеется, обычно в плане производительнсти такой подход проигрывает.
А придумывать новые способы, как кучу данных запихать в одну ячейку - это именно создание проблем как автору проекта, так и тем, кто потом будет этот проект поддерживать и переделывать.
[поправлено модератором] | |
|
|
|
|
|
|
|
для: Trianon
(26.10.2008 в 12:24)
| | спасибо за ответ. | |
|
|
|