【发布时间】:2025-12-26 18:00:10
【问题描述】:
我正在阅读 Ramakrishnan 编写的数据库管理系统简介,我遇到了以下 ER 图:
上面写着,
"For example, we might identify a subset of employees as Senior Emps. We can
modify Figure 2.12 to reflect this change by adding a second ISA node as a
child of Employees and making Senior Emps a child of this node."
我的问题是,为什么我们需要另一个 ISA 节点?为什么我们不直接将这个新实体添加到当前的 ISA 节点?这有关系吗?
谢谢
【问题讨论】:
-
可能是因为来自任何给定 ISA 的选择必须是互斥的。雇员要么是小时工,要么是合同工。折腾高级,它不是第三个分支,它是一种完全不同类型的 ISA 关系。
-
@NealB 所以你的意思是,由于小时工和合同工在某种程度上是相关的,我们使用相同的 ISA 节点,但是为 SeniorEmployees 使用相同的 ISA 节点是错误的,还是使用另一个更好ISA 节点只是为了可读性等?
标签: database database-design relational-database