@Bjornie
Изучаю Python

Правильно ли я спроектировал связь данных в БД?

Есть 3 категории данных, каждая из которых зависит друг от друга:
  1. Регион
  2. Дисциплина
  3. Группы
  • Конечная точка - выбор группы (3). которая уже покажет список матчей в группе.
  • На каждый регион (1) задаются свои дисциплины (2), для выбранной дисциплине привязываются свои группы (3).
  • Далее в каждой группе выводятся список матчей, которые привязаны к определенной группе.

- Кол-во регионов будет небольшое, около 30.
- В каждом регионе может быть 100 дисциплин (все разные! уникальные).
- В каждой дисциплине может быть 100 групп (все разные! уникальные).

Поиск будет осуществляться по группам, как последнее звено в критериях выборки.

Правильно ли я сделал схему? e032dbea183c4096ab72a8a52a147df6.png
  • Вопрос задан
  • 215 просмотров
Пригласить эксперта
Ответы на вопрос 1
zergon321
@zergon321
Регионы - дисциплины и дисциплины - группы - судя по всему, от ношения многие ко многим (в одном регионе - множество дисциплин, но одна и та же дисциплина, футбол, например, может быть в нескольких регионах, так же и с группами). Сделайте так: дисциплины, регионы и группы - в отдельных таблицах, где есть только их id и названия. Четвертая таблица состоит из id региона, id дисциплины и id группы, а также id самой записи в 4-ой таблице. id записи из 4-ой таблицы - внешний ключ для записей в таблице матчей. Кстати, в вашем случае такая схема поможет сэкономить мно-о-о-о-о-го места на жестком диске сервера БД.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы