La restricción PRIMARY KEY en SQL identifica de forma única cada registro en una tabla.
Las claves primarias deben contener valores únicos y no pueden contener valores NULL.
Una tabla solo puede tener una clave principal, que puede consistir en campos simples o múltiples.
SQL PRIMARY KEY en CREATE TABLE
El siguiente SQL crea una PRIMARY KEY en la columna «ID» cuando se crea la tabla «Personas«:
CREATE TABLE Personas ( ID int NOT NULL PRIMARY KEY, Apellidos varchar(255) NOT NULL, Nombre varchar(255), Edad int );
Para permitir la denominación de una restricción PRIMARY KEY y para definir una restricción PRIMARY KEY en varias columnas, use la siguiente sintaxis SQL:
CREATE TABLE Personas ( ID int NOT NULL, Apellidos varchar(255) NOT NULL, Nombre varchar(255), Edad int, CONSTRAINT PK_Persona PRIMARY KEY (ID,Apellidos) );
Nota: En el ejemplo anterior solo hay una clave primaria (PK_Person). Sin embargo, el VALOR de la clave principal se compone de DOS COLUMNAS (ID + Apellido).
SQL PRIMARY KEY con ALTER TABLE
Para crear una restricción de PRIMARY KEY en la columna «ID» cuando la tabla ya está creada, use el siguiente SQL:
ALTER TABLE Persons ADD PRIMARY KEY (ID);
Para permitir la denominación de una restricción PRIMARY KEY y para definir una restricción PRIMARY KEY en varias columnas, use la siguiente sintaxis SQL:
ALTER TABLE Personas ADD CONSTRAINT PK_Persona PRIMARY KEY (ID,Apellidos);
Nota: Si usa la instrucción ALTER TABLE para agregar una clave principal, la columna o columnas de la clave principal ya deben haberse declarado que no contienen valores NULL (cuando se creó la tabla por primera vez).
DROP PRIMARY KEY: Cómo borrar la restricción
Para eliminar una restricción PRIMARY KEY, use el siguiente SQL:
ALTER TABLE Personas DROP CONSTRAINT PK_Persona;