7 tipos de claves en DBMS explicados
Publicado: 2021-03-12Tabla de contenido
¿Qué son las claves en DBMS?
Una clave en DBMS es un atributo o un conjunto de atributos que ayudan a identificar de manera única una tupla (o fila) en una relación (o tabla). Las claves también se utilizan para establecer relaciones entre las diferentes tablas y columnas de una base de datos relacional. Los valores individuales de una clave se denominan valores clave.
Este blog cubrirá todo lo que necesita saber sobre las claves en DBMS y el cierre de atributos para encontrar la clave de cualquier relación (tabla). Quédese hasta el final del artículo para algunas preguntas críticas de GATE sobre claves en DBMS.
¿Por qué son necesarias las claves?
Se utiliza una clave en las definiciones de varios tipos de restricciones de integridad. Una tabla en una base de datos representa una colección de registros o eventos para una relación particular. Ahora puede haber miles y miles de tales registros, algunos de los cuales pueden estar duplicados.
Debe haber una manera de identificar cada registro por separado y de manera única, es decir, sin duplicados. Las llaves nos permiten estar libres de esta molestia.
Tomemos un ejemplo de la vida real de la base de datos de cada estudiante que estudia en una facultad de ingeniería.
¿Qué atributo del estudiante crees que identificará de manera única a cada uno de ellos? Puede referirse a un estudiante usando su nombre, departamento, año y sección. O bien, puede mencionar solo el número de registro universitario del estudiante, y puede obtener todos los demás detalles de eso.
Una clave puede ser una combinación de más de un atributo (o columnas) o solo un atributo. El motivo principal de esto es dar a cada registro una identidad única .
Lea también: DBMS vs RDBMS
Tipos de claves en DBMS
En términos generales, hay siete tipos de claves en DBMS:
- Clave primaria
- Llave candidata
- Súper llave
- Clave externa
- Clave compuesta
- Clave alternativa
- Llave unica
Veamos cada uno de ellos por separado.
1. Clave principal
Una clave principal es una columna de una tabla o un conjunto de columnas que ayuda a identificar cada registro presente en esa tabla de forma única. Solo puede haber una clave principal en una tabla. Además, la clave principal no puede tener los mismos valores que se repiten para ninguna fila. Cada valor de la clave principal tiene que ser diferente sin repeticiones.
La restricción PRIMARY KEY (PK) puesta en una columna o conjunto de columnas no les permitirá tener valores nulos o duplicados. Una tabla solo puede tener una restricción de clave principal. Cualquier valor en la clave principal no puede ser cambiado por ninguna clave externa (explicada a continuación) que se refiera a ella.
2. Súper Clave
Super Key es el conjunto de todas las claves que ayudan a identificar filas en una tabla de forma única. Esto significa que todas aquellas columnas de una tabla que sean capaces de identificar las otras columnas de esa tabla de forma única serán consideradas súper claves.
Super Key es el superconjunto de una clave candidata (se explica a continuación). La clave principal de una tabla se selecciona del conjunto de superclaves para convertirse en el atributo de identidad de la tabla.
3. Clave candidata
Las claves candidatas son aquellos atributos que identifican de forma única las filas de una tabla. La clave principal de una tabla se selecciona de una de las claves candidatas. Entonces, las claves candidatas tienen las mismas propiedades que las claves primarias explicadas anteriormente. Puede haber más de una clave candidata en una tabla.
4. Clave alternativa
Como se indicó anteriormente, una tabla puede tener múltiples opciones para una clave principal; sin embargo, puede elegir sólo uno. Por lo tanto, todas las claves que no se convirtieron en la clave principal se denominan claves alternativas.
5. Clave externa
Foreign Key se utiliza para establecer relaciones entre dos tablas. Una clave externa requerirá que cada valor en una columna o conjunto de columnas coincida con la clave principal de la tabla de referencia. Las claves foráneas ayudan a mantener los datos y la integridad referencial.
6. Clave compuesta
La clave compuesta es un conjunto de dos o más atributos que ayudan a identificar cada tupla en una tabla de forma única. Los atributos del conjunto pueden no ser únicos cuando se consideran por separado. Sin embargo, cuando se toman todos juntos, asegurarán la singularidad.
7. Clave única
Clave única es una columna o conjunto de columnas que identifican de forma única cada registro en una tabla. Todos los valores tendrán que ser únicos en esta Clave. Una clave única se diferencia de una clave principal porque solo puede tener un valor nulo, mientras que una clave principal no puede tener ningún valor nulo.
Dependencias Funcionales
Ahora que conocemos un tipo diferente de claves en DBMS, veamos cómo identificarlas cuando se les proporciona una tabla de una base de datos. Para ello, utilizamos el concepto de dependencias funcionales.
Una dependencia funcional (FD) es una restricción entre dos conjuntos de atributos. Esta restricción es para dos tuplas cualesquiera t1 y t2 en r si t1[X] = t2[X], entonces tienen t1[Y] = t2[Y]. Esto significa que el valor del componente X de una tupla determina de forma única el valor del componente Y.
FD se denota como X ? Y (esto se lee como “Y es funcionalmente dependiente de X”). El lado izquierdo se llama determinante y el lado derecho se llama dependiente.
Cierre de un conjunto de Atributos
Un cierre es un conjunto de todos los FD posibles derivados de un conjunto dado de FD. También se conoce como un conjunto completo de FD. Si se usa F para donar el conjunto de FD para la relación R, entonces el cierre de un conjunto de FD implícito en F se denota por F+ .
Ahora definiremos el cierre de un conjunto de atributos relacionados con un conjunto dado de FD. Ayudará a identificar la súper clave de la relación y determinará si se puede inferir un FD a partir de un conjunto determinado de FD o si un FD es redundante. Después de encontrar un conjunto de dependencias funcionales en una relación, el siguiente paso es encontrar la Super Clave para esa relación (tabla).
Luego encontramos el cierre del conjunto de atributos para decidir si un atributo (o conjunto de atributos) de cualquier tabla es una clave para esa tabla o no. El conjunto de atributos que dependen funcionalmente del atributo X se denomina Cierre de atributo de X y se puede representar como X+.
A continuación se presentan algunas reglas necesarias para determinar F+:
- Reflexividad: si X es un superconjunto de Y o Y es un subconjunto de X, entonces X ? y
- Aumento: Si X ? Y, entonces XZ? YZ. O si Z ⊆W, y X ? Y, entonces XW? YZ.
- Transitividad: Si X ? Y y Y? ¿Z, luego X? z
- Unión: Si X ? Y y X? ¿Z, luego X? YZ.
- Descomposición: Si X ? YZ, entonces X? Y y X? z
- Pseudo-Transitividad: Si X ? Y y YW? Z, entonces XW? z
¿Cómo encontrar claves candidatas y superclaves mediante el cierre de atributos?
- Si el cierre de atributos de un conjunto de atributos contiene todos los atributos de la relación, el conjunto de atributos será la superclave de la relación.
- Si ningún subconjunto de este conjunto de atributos puede determinar funcionalmente todos los atributos de relación, ese conjunto será la clave candidata.
Discutamos algunas preguntas GATE previamente formuladas para ver las aplicaciones del cierre de atributos.
PUERTA 2014
Considere el esquema de relación R = {E, F, G, H, I, J, K, L, M, N} y el conjunto de dependencias funcionales {{E, F} ? {G}, {F} ? {I, J}, {E, H} ? {K, L}, K? {M}, L ? {N} en R. ¿Cuál es la clave para R?
(A) {E, F}
(B) {E, F, H}
(C) {E, F, H, K, L}
(D) {E}
Planteamiento: Comprobaremos el cierre de atributos de todas las opciones proporcionadas. El conjunto cuyo cierre nos dará la relación completa R será la respuesta correcta.
A: {E, F} + = {EFGIJ} ≠ R
B: {E, F, H} + = {EFGHIJKLMN} = R
C: {E, F, H, K, L} + = {EFGHIJKLMN} = R
D: {E} + = {E} ≠ R
Ambas opciones B y C nos dan todo el esquema de relación. Sin embargo, elegimos la opción mínima para que sea la respuesta correcta porque una clave candidata debe ser la súper clave mínima .
Responder: B
PUERTA 2013
La relación R tiene ocho atributos ABCDEFGH. Los campos de R contienen solo valores atómicos. F = {CH? G, A? BC, B? CFH, E? ¿A, F? EG} es un conjunto de dependencias funcionales (FD) de modo que F+ es exactamente el conjunto de FD que se cumple para R.
¿Cuántas claves candidatas tiene la relación R?
(A) 3
(B) 4
(C) 5
(D) 6
Enfoque: Tomaremos el LHS de cada dependencia funcional dada en la pregunta y encontraremos sus cierres de atributos.
CH+ = G
A+ = ABCEFGH
B+ = ABCEFGH
E+ = ABCEFGH
F+ = ABCEFGH
Entonces vemos que los cierres de A, B, E, F tienen la relación completa excepto por el atributo D. Entonces hay un total de 4 claves candidatas AD, BD, ED y FD.
Respuesta: B
Aprenda cursos de software en línea de las mejores universidades del mundo. Obtenga programas Executive PG, programas de certificados avanzados o programas de maestría para acelerar su carrera.
Conclusión
Las claves y las dependencias funcionales juegan un papel muy importante en el diseño de una base de datos. Estos conceptos también ayudan a encontrar la diferencia entre un buen y un mal diseño de bases de datos. El proceso final para eliminar las redundancias y hacer que la base de datos sea eficiente es la normalización , que utiliza todos los conceptos mencionados en este artículo.
Si está interesado en obtener más información sobre el desarrollo de pila completa, consulte el programa Executive PG de upGrad & IIIT-B en desarrollo de software de pila completa, que está diseñado para profesionales que trabajan y ofrece más de 500 horas de capacitación rigurosa, más de 9 proyectos, y asignaciones, estado de ex alumnos de IIIT-B, proyectos finales prácticos y asistencia laboral con las mejores empresas.
¿Cuáles son los diferentes tipos de claves en DBMS?
Hay varios tipos de claves que se utilizan en una base de datos. La clave principal se utiliza para identificar una fila específica en una tabla. La clave única se utiliza para garantizar que solo haya una entrada en una tabla específica. Una clave externa se utiliza para vincular las entradas de una tabla a otra. Una clave compuesta es una colección de varias columnas en una tabla que juntas se usan para identificar una fila. Estas claves lo ayudan a identificar una columna particular de una fila de una tabla de manera precisa y única. Por lo tanto, es muy importante utilizar las columnas precisas como clave según su caso de uso.
¿Qué es una clave externa en DBMS?
La clave externa es una columna o un conjunto de columnas que se utiliza para vincular las filas de una tabla con las filas de otra tabla. Se utiliza para evitar la inconsistencia de datos. En DBMS, la clave externa se implementa usando una sola columna o un conjunto de columnas (columna lógica) y el DBMS verifica que los valores en estas columnas coincidan con los valores en las columnas a las que se hace referencia (clave principal). Por ejemplo, supongamos que la tabla A y la tabla B tienen una columna denominada columna A. Puede decir que la columna A de la tabla A hace referencia a la columna A de la tabla B. Esto se puede imaginar como una flecha con un valor de clave externa que apunta a la tabla de destino.
¿Qué es una clave compuesta en DBMS?
La clave compuesta es una superclave. Es una combinación de una o más columnas. Permite construir una sola clave a partir de una combinación de diferentes columnas. También se le llama identificador compuesto, clave compuesta o clave compuesta. En resumen, puede usar un conjunto de columnas para identificar una fila única en su tabla, en caso de que no tenga una sola columna que pueda identificar una fila de manera única. En tal caso, el conjunto de todas las columnas que utilizará se considerará como una clave compuesta. Por lo tanto, se puede decir con razón que si una clave principal tiene más de una columna, se le cambia el nombre a clave compuesta.