![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| avlzll |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 30.11.2007 Репутация: нет Всего: нет |
Всем привет.
В образовательных целях пишу простенькую читалку РСС. Принял решение в базе хранить две таблицы: юзеры и, собственно, рсс фиды.
То есть, таблица должна хранить URL фида (url), его название (name) и список юзеров (users), которые на этот фид подписались. Собственно, вопрос вот в чем. Как правильно с этим списком юзеров работать? (Список может выглядеть как: [user1 user2 user3 user4 user5] etc.) Например, как правильно этот список формировать? Если юзер добавляет уже существующий фид в базе, мы не создаем новый фид, а просто приписываем его ник/id в строку users этого фида (те кто уже читает + этот новый user). Сделать select всех юзеров в переменную + добавить одного нового и сделать update? Как-то кривовато кажется. Далее, если затем выбирать все фиды, который читает конкретный юзер, запрос нужно делать с применением LIKE % % ? Буду рад пинку в правильную сторону. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 9 Всего: 315 |
вы собственно обнаружили две базовых кривизны такого подхода. решается она просто - создаётся ещё одна таблица: id int, id_iser int, id_rss_fid int одна подписка - один пользователь. и редактирование удобно, и выборка, и поиск очень быстрый |
|||
|
||||
| avlzll |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 30.11.2007 Репутация: нет Всего: нет |
Действительно. Так куда более логичнее и правильнее. Выборка значительно удобнее в таком случае.
Единственное, в случае, если добавляемого фида в базе нет, надо делать два insert-запроса (один в таблицу с фидами, другой в таблицу с подписками). Хотя в первом варианте не лучше с этим. Спасибо! |
|||
|
||||
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: -1 Всего: 32 |
avlzll, простите, немного офф...
но все же, зачем в таблице, которая называется rss_feeds называть поле rss_feed_id? почему не просто id, по аналогии с другими полями? -------------------- ![]() ![]() |
|||
|
||||
| avlzll |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 30.11.2007 Репутация: нет Всего: нет |
Да это чисто тестовый вариант. Переделаем все по-человечески |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |