介绍
大家好,这主要是关于数据库设计中的继承和规范化技术及其在实体关系图中的适当表示的分类/理论问题。在实际实现中,它不会带来挑战,因为您只需将有问题的属性设置为IS NOT NULL即可。然而,对于图形表示,我对如何正确地做它有点困惑。这是一个 github gist 链接,其中包含一个交互式美人鱼图,表示特定示例的假设场景:gist
问题
重要部分在本节中:
假设我们有一个名为 PRODUCT 的实体,它可能具有不同类型的属性,具体取决于所讨论的产品(例如物理产品/数字产品)。出于这个原因,我们引入了两个“子表”,其 PK 引用 PRODUCT 的 FK 属性product_type_id。很明显,一个 PRODUCT 只能有一个单一的 product_type_id,但是因为它可以是PhysicalProduct或DigitalProduct,这两个“子表”与 PRODUCT 有什么样的关系?到目前为止,我推断它必须是图中所示的一对(零或一) 。这就是问题所在(也许不存在)。如果我们有两个一到(零或一)与强制性IS NOT NULL属性的关系是否在视觉上推断出两个一对零关系的可能性,或者它是否没有在我的脑海中点击,这就是在这种情况下应该如何?