首页 > 解决方案 > 没有外键的弱实体

问题描述

引用自维基百科

在关系数据库中,弱实体是不能仅通过其属性唯一标识的实体;因此,它必须结合其属性使用外键来创建主键。外键通常是与其相关的实体的主键。

如果一个实体没有外键和主键,但有超键会怎样?它是否仍然被认为是弱实体?还是不允许?

示例:一个只包含两个属性的实体:名字和姓氏
这两个属性不能作为主键,因为人们可以有相同的名字或姓氏,但他们不能同时有相同的名字和姓氏,从而使其成为超级密钥。

标签: database

解决方案


在您的示例中,它仍然很弱,因为人们可以共享姓氏和名字。这表明它仍然是一周。如果这些列的组合是唯一的,则可以将其称为主键,因为 pk 不一定是唯一列。
而且,要回答您的问题,本周实体的问题是您的请求可能是错误的或导致问题,因为您必须以某种方式来描述您的行并准确检索您想要的内容。在某些时候,如果您知道可以预期,您可以处理它,但是在更大的数据库中,开发复杂的关系可能会很复杂。


推荐阅读