DBMS 中的候选键

DBMS 中的候选键DBMS 中候选键的定义:没有冗余属性的超键被称为候选键。从超键集中选择候选键,在选择候选键时我们唯一要注意的是候选键不应具有任何冗余属性。这就是他们被称为最小超键的原因。

候选键示例

让我们举一个表Employee的例子。该表有三个属性:Emp_IdEmp_NumberEMP_NAME。在这里 Emp_IdEmp_Number将具有唯一值,并且Emp_Name可以具有重复值,因为多个员工可以具有相同的名称。

Emp_Id  Emp_Number  Emp_Name
------  ----------      --------
E01 2264            Steve
E22 2278            Ajeet
E23 2288            Chaitanya
E45 2290            Robert

上表可以有多少个超键?

  1. {Emp_Id}
  2. {Emp_Number}
  3. {Emp_Id, Emp_Number}
  4. {Emp_Id, Emp_Name}
  5. {Emp_Id, Emp_Number, Emp_Name}
  6. {Emp_Number, Emp_Name}

让我们从上面的一组超键中选择候选键。

  1. {Emp_Id} – 无冗余属性
  2. {Emp_Number} – 无冗余属性
  3. {Emp_Id, Emp_Number} – 有冗余属性。这些属性中的任何一个都可以是最小超键,因为这两个列都具有唯一值。
  4. {Emp_Id, Emp_Name} – 冗余属性Emp_Name
  5. {Emp_Id, Emp_Number, Emp_Name} – 有冗余属性。仅Emp_IdEmp_Number就足以唯一地标识Employee表的一行。
  6. {Emp_Number, Emp_Name} – 冗余属性Emp_Name

我们选择的候选键是:

  • {Emp_Id}
  • {Emp_Number}

:从候选键组中选择主键。这意味着我们可以将Emp_IdEmp_Number作为主键。该决定由 DBA(数据库管理员)完成。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程