【发布时间】:2017-08-05 00:30:41
【问题描述】:
我正在研究包含这种三元关系的 ER 模型。我知道对这种类型的关系进行建模的一种选择是将这种关系转换为弱实体,然后使用二元关系将该实体与其他三个实体连接起来。我不知道该怎么做是如何将它们连接起来,用什么类型的二元关系。至少有人可以向我解释一下我该怎么做。
【问题讨论】:
标签: database database-design entity-relationship
我正在研究包含这种三元关系的 ER 模型。我知道对这种类型的关系进行建模的一种选择是将这种关系转换为弱实体,然后使用二元关系将该实体与其他三个实体连接起来。我不知道该怎么做是如何将它们连接起来,用什么类型的二元关系。至少有人可以向我解释一下我该怎么做。
【问题讨论】:
标签: database database-design entity-relationship
这样的……
CREATE TABLE STUDY (
STUDENT_ID int REFERENCES STUDENT,
SUBJECT_ID int REFERENCES SUBJECT,
DEPARTMENT_ID int NOT NULL REFERENCES DEPARTMENT,
PRIMARY KEY (STUDENT_ID, SUBJECT_ID)
);
看看我们如何有一个主键不跨越所有列。主键中省略了 DEPARTMENT_ID,这意味着我们可以:
换一种说法:给定的学生只能学习给定的科目一次,这发生在特定的部门下。
【讨论】: