Los últimos tutoriales de desarrollo web
 

SQL PRIMARY KEY restricción


SQL PRIMARY KEY restricción

La restricción PRIMARY KEY identifica de forma exclusiva cada registro de una tabla de base de datos.

Las claves primarias deben contener valores únicos.

Una columna de clave principal no puede contener valores nulos.

La mayoría de las tablas deben tener una clave principal, y cada tabla sólo puede tener una clave principal.


SQL PRIMARY KEY restricción en CREATE TABLE

El siguiente SQL crea una clave principal en el "P_Id" columna cuando el "Persons" se crea la tabla:

MySQL:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

Para permitir la designación de una restricción PRIMARY KEY, y para definir una restricción PRIMARY KEY en varias columnas, utilice la siguiente sintaxis SQL:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
)

Note: En el ejemplo anterior sólo hay una clave primaria (pk_PersonID). Sin embargo, el valor de la clave principal se compone de dos columnas (p_id + Apellidos).


SQL PRIMARY KEY restricción en ALTER TABLE

Para crear una restricción PRIMARY KEY en la "P_Id" columna cuando ya se ha creado la tabla, utilice el siguiente código SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (P_Id)

Para permitir la designación de una restricción PRIMARY KEY, y para definir una restricción PRIMARY KEY en varias columnas, utilice la siguiente sintaxis SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)

Note: Si se utiliza la sentencia ALTER TABLE para añadir una clave principal, la columna de clave principal (s) debe haber sido declarado no contener valores nulos (cuando se creó por primera vez la tabla).


Para quitar una restricción PRIMARY KEY

Para quitar una restricción PRIMARY KEY, utilice el siguiente código SQL:

MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID