首页 > 解决方案 > 如何使用 Microsoft Access 关系工具创建 IS_A 关系

问题描述

我无法找到如何在 Access 中创建 IS_A 关系的明确答案。

这里有同样的问题,但没有简明的答案: IS_A relationship primary key validation rules

我有实体 Employee,以及两个子实体 Loan_Officer 和 Branch_Manager。这确实是 IS_A 关系的学校示例。

在此处输入图像描述

我已经设法创建了一个关系,但需要有一个约束,即员工必须是信贷员或分行经理,但不能两者兼而有之。现在,我不知道该怎么做,因为无论我做什么,我都可以同时在两个子实体表中分配相同的 Employee_ID。

我已经通过 PK 连接了表,如下所示: 在此处输入图像描述

现在,这个表格设计只是我所做的,以便能够通过一对一的关系将它们连接起来。我必须将 Loan_Officer 的 PK 设置为“Number”而不是“AutoNumber”,以便能够连接它们。另一种选择是在 Loan_Officer 中有一个单独的 PK,如“Loan_Officer_ID”,在 Loan_Officer 表中有一个外键“Employee_ID”,但结果再次相同(也根据 ER 图,子实体不'没有单独的PK)。

在此处输入图像描述 在此处输入图像描述

标签: ms-access

解决方案


你不能。这不是 Access 数据库的功能。

您可以创建CHECK约束来检查此类条件,但这些条件不提供级联操作的功能。

有关如何创建约束的示例,请参阅此答案。CHECK


推荐阅读