📜  DBMS中的备用键

📅  最后修改于: 2020-12-13 05:35:52             🧑  作者: Mango

DBMS中的备用键

备用键是辅助候选键,它包含候选键的所有属性,但是是备用选项。

在本节中,我们将在此了解替代键及其用法,并查看一个示例以了解其工作原理。

什么是备用键

备用键是辅助候选键,它可以唯一地标识行。但是,这样的键不能用作主键,因为,正如我们在上一节中所讨论的那样,在所有生成的候选键中,只有一个键被选为主键。因此,其他其余键称为备用键辅助键

备用键的使用

备用密钥就是候选密钥,因此备用密钥的使用/角色是相同的。这意味着备用键也用于标识表中可以唯一标识表中所有记录的那些列。

备用键示例

让我们讨论一些示例以了解备用键的工作。

范例1:

考虑一个EMPLOYEE_DETAIL表,其中具有以下属性:

Emp_SSN: SSN员工人数存储在此字段中。

Emp_Id:存储员工标识号值的属性。

Emp_name:一个属性,用于存储持有指定员工ID的员工的姓名。

Emp_email:存储指定员工的电子邮件ID的属性。

下面提供了EMPLOYEE_DETAIL表,它可以帮助您更好地理解:

因此,在上表中,有以下候选键:

这些是我们根据以上属性得出的候选关键字。现在,我们必须选择一个主键,这是三个键中最合适的,它是Emp_Id因此,主键是Emp_Id。现在,剩下的两个候选密钥是Emp_SSNEmp_email 。因此,Emp_SSN和Emp_Email是备用密钥。

范例2:

考虑另一个Student_Detail的示例,其中具有以下属性:

Stud_roll_no:用于向学生提供标识号的属性。

Stud_name:用于存储指定卷号上学生姓名的属性。

Stud_email:一个属性,它将在指定的卷号上保留特定学生的电子邮件ID。

Stud_Course:一个属性,将保存具有指定卷数的特定学生所修课程。

Student_Detail表如下所示:

从表中可以得出结论,学生的卷数可能是设置主键的最合适的选择。因此, Stud_roll_no主键,其余标识的键将是候选键,因此是备用键。

因此,备用密钥仅是候选密钥。