Key DBMS所有键组合

Key DBMS所有键组合,key,primary-key,rdbms,database,candidate-key,Key,Primary Key,Rdbms,Database,Candidate Key,我对数据库管理系统中的密钥感到困惑。因为有很多部分问题…但这是一个很好的组合问题。这就是我在这里发布的原因。 超级密钥、密钥、主键、备用密钥、候选密钥、最小密钥之间的混淆 这就是我对它的理解 超级键:可以唯一标识元组的属性或属性集 候选密钥:所有超级密钥的集合 密钥:一组最小的候选密钥中的单个密钥(存在最小属性) 主键:候选键集中的最小键 备用密钥:除主键外的所有候选密钥的集合 外键:我很清楚,很难把所有的事情都说出来 但是我混淆了superkey、key、候补key、Primary key和A

我对数据库管理系统中的密钥感到困惑。因为有很多部分问题…但这是一个很好的组合问题。这就是我在这里发布的原因。 超级密钥、密钥、主键、备用密钥、候选密钥、最小密钥之间的混淆 这就是我对它的理解

超级键:可以唯一标识元组的属性或属性集

候选密钥:所有超级密钥的集合

密钥:一组最小的候选密钥中的单个密钥(存在最小属性)

主键:候选键集中的最小键

备用密钥:除主键外的所有候选密钥的集合

外键:我很清楚,很难把所有的事情都说出来

但是我混淆了superkey、key、候补key、Primary key和Alternate key。。(如果剩余,则添加任何密钥) 所有的定义都是正确的?? 对于ER模型,这些键的定义与关系模型中的定义不同

你能举例说明你的答案吗?一个表有这些所有键。!!
谢谢

Asuperkey是任何一组属性,其值保证在关系中的所有允许元组集合中始终唯一

候选键(=最小超键)是每个超键中唯一的最小属性集。因此,从候选键中删除任何一个属性都会使其非唯一(不再是超级键)

主键就是任何候选键。主键和任何其他候选键之间没有区别

备用密钥是未指定为主键的任何候选密钥

外键根本不是键(名字有点不太好)。外键只是受引用完整性约束的关系的一组属性,其中同一组属性也是另一个关系中的候选键

举个例子?假设你有婚姻关系,有丈夫和妻子的属性(为了简单起见,我只考虑一夫一妻制的男女婚姻)

婚姻关系有三个超级键:
{丈夫,妻子}
{丈夫}
{妻子}
(一个人一次只能有一个配偶,因此这两个属性都必须是唯一的)

{丈夫}
{妻子}
是候选密钥

现在考虑这两个代码中的哪一个,<代码> {丈夫} /代码>或<代码> {妻子},可能是主键,哪个轮换?答案是,这并不重要:无论你选择称之为“主键”,这种关系的形式、功能和预期意义都是完全相同的。主键和备用键是等价的概念,关系模型对它们没有区别


实体关系建模确实倾向于区分主键和其他键,并且通常使每个实体的一个键比其他键具有一定的优先级,有时会排除或损害其他同等重要的键。这是ER建模的一个方面,通常会并且确实会导致数据库设计和数据管理中的错误。

谢谢。。。非常感谢……)
Marriages {Husband, Wife}