Solución:
Una clave candidata es una clave que identifica de forma exclusiva las filas de una tabla. Cualquiera de las claves candidatas identificadas se puede utilizar como clave principal de la tabla. Las claves candidatas que no forman parte de la clave principal se denominan llaves alternativas. Se puede describir una clave candidata como una super llave que contiene solo el número mínimo de columnas necesarias para determinar la unicidad.
Atributos principales son los atributos de la clave candidata que define la unicidad (por ejemplo: número de SSN en una base de datos de empleados)
Una clave primaria es una columna de una tabla cuyos valores identifican de forma exclusiva las filas de la tabla. La clave principal se elige de esta lista de candidatos en función de su valor percibido para la empresa como identificador.
Un valor de clave principal:
- Debe identificar de forma única la fila;
- no puede tener valores NULL;
- No debería cambiar con el tiempo;
- y debe ser lo más breve posible.
Si la clave principal es una combinación de más de una columna, se llama como clave compuesta.
Para comprender la diferencia entre la clave principal y los atributos principales, primero se debe saber qué es una clave principal y una clave candidata.
Super clave: Cualquier atributo / combinación de atributos cuyo cierre, sobre la base de dependencias funcionales dadas, determina la relación completa es un Super llave. (Una relación puede tener más de una superclave)
Por ejemplo en relación
R (A, B, C, D); dadas las dependencias funcionales como:
ABC-> D
AB-> CD
A-> BCD
D-> ABC
Las siguientes son las super claves
A B C; porque su cierre da la relación completa, es decir, (ABC) -> ABCD
AB; porque está más cerca también da la relación completa, es decir, (AB) -> ABCD
A; porque su cierre también da la relación completa, es decir, (A) -> ABCD
D; porque su cierre también da la relación completa, es decir, (D) -> ABCD
Llave candidata: Cualquier superclave cuyo subconjunto adecuado no sea una superclave es una
Llave candidata. (Una relación puede tener más de una clave candidata)
Entonces, en el ejemplo anterior, A y D son las únicas claves candidatas.
Clave primaria: Cualquier clave candidata (puede ser mínima o no) que el diseñador de la base de datos elija para identificar el registro es una clave primaria. (Una relación puede tener solo una clave primaria /(clave primaria compuesta: clave primaria que se compone de más de una columna))
En el ejemplo anterior, A (digamos) es la clave principal.
Atributos principales: Un atributo que está presente en cualquiera de las claves candidatas es un atributo principal.
Entonces, en el ejemplo anterior, A y D son atributos principales.
Las claves primarias pueden constar de un solo atributo o de múltiples atributos en combinación. Por ejemplo
name login email
Bob catlover [email protected]
Jason doglover [email protected]
El inicio de sesión sería la clave principal y el atributo será catlover / doglover todo lo que se atribuye en esa clave