【发布时间】:2016-01-25 21:41:16
【问题描述】:
【问题讨论】:
标签: database entity-relationship
【问题讨论】:
标签: database entity-relationship
三元关系是3个元素之间的单一关系,例如:
enrollment (student PK, subject PK, teacher PK)
在这种情况下,注册特定科目的学生必须向教授该科目的老师注册。老师可以教多门学科,科目可以由多位老师教,所以我们不能从另一个派生。
对这种情况进行建模的另一种方法可能是定义类。每个班级都属于特定的学科和教师,用于招收学生,例如:
class_teacher (class PK, teacher)
class_subject (class PK, subject)
class_student (class PK, student PK)
因此,三元关系被分解为3个二元关系。这不等同于上面的注册关系 - 以前我们不能在不包括学生的情况下将科目与教师联系起来。
在某些情况下,分解这样的关系可能很有用,在其他情况下则不然。作为数据建模者,您可以决定如何最好地描述一种情况。
【讨论】: