Как отключить это отношение петли - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть база данных, содержит эти таблицы. но отношение является цикличным, и это создает проблемы при создании формы.

У нас есть много классов, каждый класс может иметь более одного теста, но не все классы имеют одинаковые тесты, они разные, и для каждого теста студенты имеют оценку.

То, как я разработал базу данных, состоит в том, что викторины связаны с каждым классом один-ко-многим, а викторины связаны с отношением «многие-ко-многим» ученика, внутренней таблицей (степенью викторины) между ними. Проблема в том, что он становится цикличным, потому что quis также связан с таблицей ckass.

Я пытался придумать лучший дизайн, но не смог найти.

Цените, если у кого-то есть лучший дизайн. enter image description here

1 Ответ

0 голосов
/ 18 сентября 2018

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

Насколько мы можем судить по диаграмме, нет круговой зависимости в том смысле, что разработчики ER обычно понимают это, потому что A) Не все таблицы имеют внешние ключи, B) Если бы все таблицы имели внешние ключи, то они бы не все равно сформируйте направленную петлю.

Единственный вопрос здесь - какая у вас проблема при использовании форм. Вы не объяснили проблему, но в любом случае обычно очень неразумно структурировать дизайн вашей базы данных в соответствии с потребностями пользовательского интерфейса.

...