Natural Key和Alternate Key有什么区别?

时间:2019-08-23 13:17:46

标签: sql database entity-framework database-design

我知道自然键就像可以唯一标识行的候选键。而且我正在阅读Entity Framework教科书,其中说:

,如果您需要使用自然键值创建关系。在这种情况下,需要一个备用键,以确保唯一值并配置数据库,以便可以通过附加键和主键唯一地标识对象。

那自然键和备用键不是一回事吗?

1 个答案:

答案 0 :(得分:0)

“键”是一组唯一标识一行的列。

“候选密钥”只是一个密钥,通常是在选择“主密钥”之前使用的术语。

一个密钥可以声明为“主密钥”。

其他键是“备用键”。

“自然键”是一个键,其所有列自然都出现在表中。在IE中,它不是具有与域在逻辑上不相关的新列的“合成键”,例如递增整数列或GUID列。

  

那自然键和备用键不是一回事吗?

所以,不完全是。主键可以是自然键,也可以有备用键,即合成键。但是实际上,主键是合成键,并且具有备用键,这也是自然键。