2015-05-11 2 views
0

Итак, я создаю приложение для просмотра списка, в котором люди могут добавлять файлы, которые они просматривали, и они могут оценивать его, а что нет, записи хранятся в базе данных, поэтому они распределяются между пользователями.База данных отслеживающего списка

Но я понял, что понятия не имею, как эффективно хранить данные списка пользователей. Должен ли я создать новую таблицу, в которой есть каждый столбец с идентификатором, связанным с таблицей с фильмами в базе данных? Это кажется неэффективным, поскольку список пользователей может содержать сотни или тысячи записей, и для каждого нового столбца будет очень облагаться налогом на запросы и пространство, я думаю. Я новичок в SQL, и я не уверен, как продолжить работу над моим проектом, и помощь будет оценена.

ответ

0

Если вы правильно поняли, у вас есть список пользователей и список фильмов. Каждый пользователь может оценивать фильм. так что в этом случае, я хотел бы создать новую таблицу movie_rating со следующей структурой:


| movie_id | user_id | рейтинг | и т.д. и т.п.


Чтобы сохранить просмотренные фильмы: создать таблицу watched_movies


| movie_id | user_id | и т.д. и т.п.


Это, конечно, создавать большое количество записей, если есть много пользователей. Но не волнуйтесь, что MySQL не так уж плох :)

+0

Я получаю, как хранить оценки, меня беспокоит, как сохранить список того, что пользователь просмотрел, если у пользователя несколько сотен записей. – sykdor

+0

Вы имеете в виду, что хотите сохранить список просмотренных фильмов? Я бы взял это слишком просто. См. Отредактированный ответ –

+0

Ничего себе, несколько сотен записей! Я не знаю, могут ли базы данных справиться с этим! Просто шутки, базы данных предназначены для такого использования. Даже самый простой из домашних ПК может легко обрабатывать базы данных с 100 000 записей. – Pieter21

0

Начните изучение предмета, и это будет ясно очень скоро.

Обычно вы создаете базу данных Пользователя с Пользователями, выставкой базы данных с показом и базой данных рейтинга с рейтингами. База данных рейтинга содержит элементы со ссылкой на пользователя, ссылку на шоу и оценку рейтинга.

+0

Да, я понял, но как я могу хранить то, что наблюдал пользователь? Я имею в виду, что пользователь может добавить в свой «список наблюдения» материал, который он смотрел или планирует смотреть, и он показывает, когда он откроет этот список, записи в списке будут соответствовать таблице «показывает». Этот список должен быть довольно большим, поэтому я не уверен, как эффективно его хранить. – sykdor

+0

Создайте наблюдаемую таблицу, такую ​​как таблица рейтинга, возможно, элемент NULLable для рейтинга. – Pieter21

Смежные вопросы