logo

Clave candidata en DBMS

A llave candidata es parte de una clave conocida como Súper clave ( discutido en la sección anterior ), donde la superclave es el superconjunto de todos aquellos atributos que pueden identificar de forma única una tabla.

Aquí, discutiremos sobre la clave candidata, su función y su uso. También veremos algunos ejemplos que nos ayudarán a comprender mejor el concepto de clave candidata.

algoritmo de bellford

¿Qué es una clave candidata?

Una clave candidata es un subconjunto de un conjunto de superclaves donde la clave que no contiene ningún atributo redundante no es otra que una Llave candidata . Para seleccionar las claves candidatas del conjunto de superclaves, debemos observar el conjunto de superclaves.

Papel de una clave candidata

La función de una clave candidata es identificar una fila o columna de una tabla de forma única. Además, el valor de una clave candidata no puede ser nulo. Según los expertos, la descripción de una clave candidata es 'sin atributos redundantes' y es una 'representación mínima de una tupla'.

En qué se diferencia una clave candidata de una clave principal

Aunque el propósito tanto de la clave candidata como de la clave primaria es el mismo, es decir, identificar de forma única las tuplas, y luego también son diferentes entre sí. Esto se debe a que, en una tabla, podemos tener una o más de una clave candidata, pero solo podemos crear una clave principal para una tabla. Por tanto, a partir del número de claves candidatas obtenidas, podemos identificar la clave primaria adecuada. Sin embargo, si solo hay una clave candidata en una tabla, entonces se puede considerar para ambas restricciones de clave.

Ejemplo de clave candidata

Veamos el mismo ejemplo que se tomó al hablar de Super Key para comprender el funcionamiento de una clave candidata.

Tenemos una EMPLEADO_DETALLE tabla donde tenemos los siguientes atributos:

amontonar ordenar

Emp_SSN: El número de SSN se almacena en este campo.

Emp_Id: Un atributo que almacena el valor del número de identificación del empleado.

cadena a int java

nombre_empr: Un atributo que almacena el nombre del empleado que posee la identificación de empleado especificada.

Emp_correo electrónico: Un atributo que almacena la identificación de correo electrónico de los empleados especificados.

El EMPLEADO_DETALLE A continuación se proporciona una tabla que le ayudará a comprender mejor:

Clave candidata en DBMS

Entonces, de la tabla anterior, obtuvimos las superclaves que se proporcionan a continuación (discutidas en la sección anterior):

Clave candidata en DBMS

Ahora, a partir de estos conjuntos de superclaves, podemos concluir las claves candidatas. Para seleccionar las claves candidatas, la mejor manera es analizar y formar las claves primarias tanto como podamos. Por lo tanto, necesitamos identificar aquellos conjuntos de los conjuntos de superclaves que son los únicos que pueden identificar toda la tabla, o podemos decir los otros atributos de la tabla. Así, el resultado es:

lista de programas de Python
Clave candidata en DBMS

Entonces, estos son los tres atributos obtenidos que pueden identificar los otros atributos no primos de la tabla. Todas estas son las claves candidatas y de las cuales podemos elegir el atributo más apropiado que pueda identificar fácilmente todos los registros de la tabla, que se describirá como la clave primaria.

Diferencia entre clave candidata y superclave

De las discusiones anteriores, podemos tener los siguientes puntos de diferencia:

Súper clave Llave candidata
Es el superconjunto de todos esos atributos el que puede identificar de forma única la tabla. Es el subconjunto o la parte de la Super clave.
No es en absoluto obligatorio que todas las superclaves sean claves candidatas. Por otro lado, todas las claves candidatas son superclaves.
El atributo de superclave puede ser NULL, lo que significa que sus valores pueden ser nulos. Un atributo que contiene una clave candidata nunca puede ser NULL, lo que significa que sus valores no pueden ser nulos.
Todas las superclaves se formaron juntas para generar las claves candidatas. De manera similar, las claves candidatas se combinan para crear claves primarias.
El número de superclaves formadas siempre se ve mayor. Aquí, las claves candidatas son menos que superclaves.

Por tanto, la superclave es el superconjunto, la clave candidata es el subconjunto y la clave primaria es el subconjunto de la superclave.