多对多关系ERD

时间:2015-12-11 03:00:20

标签: php mysql database relationship erd

我目前正在为论文库设计数据库设计。我遇到了这种情况:

•学生只能提交一篇论文,许多学生可以提交论文。

但是,我不想让论文表重复论文ID。 我应该使用联结表吗?我用一个初步设计(下面)。我是在正确的轨道吗?

enter image description here

2 个答案:

答案 0 :(得分:1)

你快到了。只有我对Thesis_Students表有评论,我发现你有ThesisIDStudentID作为PK,这将涵盖这一点,一个学生应该只与一个论文相关。但是你有一个附加条件"学生只能提交一篇论文"。因此,您需要一个仅UNIQUE的{​​{1}}约束,以便只能插入任何StudentID的一个条目。 (实际上,在这种情况下,您不再需要StudentID + ThesisID的PK,因为您无论如何都无法为StudentID插入多个条目。

答案 1 :(得分:1)

我建议把毕谱证栏放在学生表上,