SQL restricción UNIQUE
La restricción UNIQUE identifica de forma exclusiva cada registro de una tabla de base de datos.
La única e restricciones PRIMARY KEY ambos proporcionan una garantía de la unicidad para una columna o conjunto de columnas.
Una restricción PRIMARY KEY tiene automáticamente una restricción UNIQUE definida en él.
Tenga en cuenta que usted puede tener muchas restricciones UNIQUE por mesa, pero sólo una restricción PRIMARY KEY por tabla.
SQL restricción UNIQUE en CREATE TABLE
El siguiente SQL crea una restricción UNIQUE en el "P_Id" columna cuando el "Persons" se crea la tabla:
SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
P_Id int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
MySQL:
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (P_Id)
)
Para permitir la designación de una restricción UNIQUE, y para definir una restricción UNIQUE 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 uc_PersonID UNIQUE (P_Id,LastName)
)
SQL restricción UNIQUE en ALTER TABLE
Para crear una restricción UNIQUE en el "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 UNIQUE (P_Id)
Para permitir la designación de una restricción UNIQUE, y para definir una restricción UNIQUE en varias columnas, utilice la siguiente sintaxis SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
Para quitar una restricción UNIQUE
Para quitar una restricción UNIQUE, utilice el siguiente código SQL:
MySQL:
ALTER TABLE Persons
DROP INDEX uc_PersonID
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID