我应该为这些实体使用三元关系吗?

时间:2017-11-07 12:39:34

标签: entity-relationship

我在项目的ER模型中有这些实体:

  • 学生
  • 教授
  • 主题

我应该用三元关系连接它们,还是用二元关系连接它们?我使用三元关系。也许我没有这个关系的最佳名称,但它涉及评分。

enter image description here

如果我应该使用三元关系,我应该使用连接表的Ids作为表的主键,它将表示数据库中的关系

1 个答案:

答案 0 :(得分:1)

根据您的图表,似乎每个Student / Subject组合都会确定Professor。让我们将其与二元关系进行比较:

StudentSubject之间的二元关系可以让您记录Students哪个Subjects正在拍摄Professor,而不指定Professor。这对您的系统有效,还是有必要为每个Student / Subject组合捕获Student

ProfessorProfessor之间的二元关系会为每个Student记录Professors,或者每个{{1}可能会记录一组Student }}。如果不知道每个ProfessorStudent教授哪个主题,这是否有用?

SubjectProfessor之间的二元关系会为每个主题记录一个或多个Professors。这可能有助于捕捉Professor能够或有资格教授的内容,而不是他们被分配或计划教授的内容。

我参与了两个学校管理系统,我们捕获了(Student PK, Subject PK)(学生们学习的科目)和(Professor PK, Subject PK)(可以教授教授的科目),但不是三元关系{ {1}},我们定义了主题组或部分(Student PK, Subject PK, Professor)和学生部分分配Sections (SectionID PK, Subject, Professor)。主题组或部分提供了附加其他属性的便利位置,例如房间号,时间表安排,学费语言等。