Clave compuesta en SQL

Para saber qué es una clave compuesta necesitamos saber qué es una clave principal, una clave principal es una columna que tiene un valor único y no nulo en una tabla SQL. 

Ahora, una clave compuesta también es una clave principal, pero la diferencia es que se crea mediante la combinación de más de una columna para identificar la fila particular de la tabla.

Clave compuesta:

Una clave compuesta está formada por la combinación de dos o más columnas en una tabla que se puede usar para identificar de manera única cada fila en la tabla cuando las columnas se combinan se garantiza la unicidad de una fila, pero cuando se toma individualmente no garantiza unicidad, o también puede entenderse como una clave primaria formada por la combinación de dos o más atributos para identificar de forma única cada fila de una tabla. 

Nota: 

  •  También se puede crear una clave compuesta mediante la combinación de más de una clave candidata.
  • Una clave compuesta no puede ser nula.

Ejemplo:

Crear una base de datos:

CREATE School;

Usando la base de datos:

USE School;

Creando una tabla con una clave compuesta:

CREATE TABLE student
(rollNumber INT, 
name VARCHAR(30), 
class VARCHAR(30), 
section VARCHAR(1), 
mobile VARCHAR(10),
PRIMARY KEY (rollNumber, mobile));

En este ejemplo, hemos creado la clave compuesta como la combinación de dos columnas, es decir, rollNumber y mobile porque todas las filas de la tabla estudiante pueden identificarse de manera única mediante esta clave compuesta.

Insertar registros en la tabla:

INSERT INTO student (rollNumber, name, class, section, mobile) 
VALUES (1, "AMAN","FOURTH", "B", "9988774455");
INSERT INTO student (rollNumber, name, class, section, mobile) 
VALUES (2, "JOHN","FIRST", "A", "9988112233");
INSERT INTO student (rollNumber, name, class, section, mobile) 
VALUES (3, "TOM","FOURTH", "B", "9988777755");
INSERT INTO student (rollNumber, name, class, section, mobile) 
VALUES (4, "RICHARD","SECOND", "C", "9955663322");

Consultando los registros:

SELECT * FROM student;

PRODUCCIÓN: 

Publicación traducida automáticamente

Artículo escrito por deveshkumarsharma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *