我的数据库设计中的多对多关系

时间:2015-04-13 19:00:41

标签: database-design ms-access-2007 database-schema

到目前为止,我有一个非常简单的数据库设计。我现在面临的一个问题是以下情况。

学生可以有多个科目,多个学生可以参加科目。我无法加入以下表格

1.Student
2.Student_Subject
3.Subject

我在这里误以为........... Class DataBase Design

1 个答案:

答案 0 :(得分:1)

您必须将Student>IDStudent_Subject>St_IDSubject>IDStudent_Subject>Sub_ID联系起来。

您需要这样做,因为Student表和Subject表之间的关系是多对多的。你必须把它分成2对1对多对多和多对一的关系。这是建立SQL关系的主要规则之一。

并且在这种情况下,您不会需要Student>st_Id,因为Student>Id会存储学生的ID.it与Subject>Sub_id相同。< / p>

现在,当学生有很多课程时,您需要向Student_Subject添加一个新字段,其中包含St_ID中学生的ID和Sub_ID中课程的ID。对于有很多学生的课程也会如此。

在这两种情况下,您只会向Student_Subject表添加字段。

你可以更多地了解SQL关系。