- 键key在关系数据库中起着重要作用。
- 它用于从表中唯一标识任何记录或数据行。它还用于建立和识别表之间的关系。
文章图片
键key类型
文章图片
1.主键
- 它是第一个键key, 用于唯一地标识一个实体的一个实例。正如我们在PERSON表中看到的那样, 一个实体可以包含多个键。从这些列表中最合适的键key成为主键key。
- 在EMPLOYEE表中, ID可以是主键, 因为它对于每个员工都是唯一的。在EMPLOYEE表中, 我们甚至可以选择License_Number和Passport_Number作为主键, 因为它们也是唯一的。
- 对于每个实体, 主键的选择均基于需求和开发人员。
文章图片
2.候选键
- 候选键是可以唯一标识元组的属性或属性集。
- 除主键外的其余属性均视为候选键。候选键与主键一样强。
文章图片
3.超级键
超级键是一组可以唯一标识元组的属性。超级键是候选键的超集。
例如:在上面的EMPLOYEE表中, 对于(EMPLOEE_ID, EMPLOYEE_NAME), 两个雇员的名称可以相同, 但是他们的EMPLYEE_ID不能相同。因此, 这种组合也可能是关键。
【DBMS键key详解】超级键key将是EMPLOYEE-ID, (EMPLOYEE_ID, EMPLOYEE-NAME)等。
4.外键
- 外键是表的列, 用于指向另一个表的主键。
- 在公司中, 每个员工都在特定部门工作, 而员工和部门是两个不同的实体。因此, 我们无法在employee表中存储部门的信息。这就是为什么我们通过一个表的主键链接这两个表。
- 我们将DEPARTMENT表的主键Department_Id添加为EMPLOYEE表中的新属性。
- 现在在EMPLOYEE表中, Department_Id是外键, 并且两个表都相关。
文章图片
推荐阅读
- DBMS数据库语言
- DBMS join操作详解
- DBMS join依赖
- DBMS完整性约束
- DBMS推断规则(IR)
- DBMS索引顺序访问方法(ISAM)
- DBMS包含依赖性
- DBMS Heap文件组织
- DBMS和散列原理解析