SQL отношения между студентом, уроками и посещаемостью - PullRequest
0 голосов
/ 18 февраля 2019

Для школьного проекта я пытаюсь сохранить учеников, их посещаемость и какие онлайн-уроки им разрешено просматривать.

Например, студенту с желтым поясом разрешено смотреть уроки с белым и желтым поясом.Система ремней заменена на кю, который также может иметь дан.

Пока что я создал следующее:

  • Student: studentID (PK), имя, фамилия, возраст, кю, дан
  • Attendance: идентификатор посещаемости (PK), идентификатор студента (FK), дата
  • Lesson: идентификатор урока (PK), имя, кю, дан

Я застрял в поиске возможногоотношения между уроком и учеником, поскольку неправильно ставить ФК на уроке у студента.

Насколько я знаю, это всего лишь один большой класс, поэтому я не могу сформировать отношения между учеником-класс и урок-класс.

Ответы [ 2 ]

0 голосов
/ 18 февраля 2019

Я понимаю, что у вас есть отношения НМ между уроками и учащимися, когда каждый студент может записаться на несколько уроков, и каждый урок может (и, надеюсь, таков) быть взятым многими студентами.

Типичный способПредставить такое отношение - создать промежуточную таблицу, в которой хранится информация о том, какой учащийся участвует в каком урокеСкажем, таблица student_lesson:

  • id: первичный ключ
  • lessonID: внешний ключ к уроку таблицы
  • studentID: внешний ключ к таблицеstudent

Вам потребуется создать уникальное ограничение для столбцов (lessonID, studentID) - или пропустить пропустить id и сделать (lessonID, studentID) первичным ключом таблицы моста.

0 голосов
/ 18 февраля 2019

Насколько я понял, должно быть много-много отношений, так как многие ученики могут посещать один и тот же урок, и у ученика может быть много сезонов, поэтому я думаю, что другой стол с идентификатором студента и идентификатором сезона решит проблему

...