以示例(DBMS)解释主键的概念。


键是用于标识数据库中记录的数据项,它有助于唯一地标识实体集中的实体。

键允许我们识别一组属性,这些属性足以区分彼此的实体。

示例

账户号码、员工编号、客户编号用作键字段,因为它们专门标识存储在数据库中的记录。

不同类型的键

数据库管理系统 (DBMS) 中不同类型的键如下:

  • 主键

  • 超键

  • 候选键

  • 替代键

  • 人工键

  • 外键

主键、超键、候选键、替代键和人工键都具有唯一性,而外键则体现了参照完整性。

主键

数据库设计者从多个候选键中选择一个作为数据库的主键。主键唯一标识表中的每条记录,并且两条记录的主键值绝不能相同。

主键具有一些特性,如下所示:

  • 唯一性(两条不同的记录不能相同)。

  • 非空(不允许空值)。

  • 如果任何外键引用该主键,则主键列中的值永远不能修改或更新。

为了清晰地标识,主键在表中下划线。

例如:

stdNo

考虑下面的员工表:

EmpID
Empname (员工姓名)
SSN (社会安全号码)
DeptID (部门ID)
DOB (出生日期)

这里:

  • 这里:

  • 我们选择在行级别维护表中的唯一性。

  • 我们选择在行级别维护表中的唯一性。

  • EmpID 是一个较好的选择,因为 SSN 是一个安全值。

  • 主键是由数据库设计者选择的候选键,用于标识实体集中的实体。

  • 主键是最小的超键。

  • 在 ER 图中,主键用下划线表示。

  • 主键仅由单个属性组成。

  • 但主键也可以由多个属性组成。

要将列字段标识为主键,它必须满足以下条件:

  • 没有两行具有相同的主键值。

  • 每行都必须具有主键值。

  • 主键字段不能为 NULL 值。

  • 如果任何外键引用该主键,则主键列中的值永远不能修改或更新。

在上图的实体关系模型 (ER) 图中:

  • 在客户表中,customer-id 是主键。

  • 在贷款表中,loan-number 是主键。

更新于:2021年7月4日

3K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告