SQL UNIQUE Constraint

SQL UNIQUE Constraint

De UNIQUE beperking identificeert uniek elk record in de database tabel.

UNIQUE en PRIMARY KEY beperkingen bieden een unieke garantie voor kolommen of kolomsets.

PRIMARY KEY heeft een automatisch gedefinieerde UNIQUE beperking.

Let op, elke tabel kan meerdere UNIQUE beperkingen hebben, maar elke tabel kan maar één PRIMARY KEY beperking hebben.

SQL UNIQUE Constraint op CREATE TABLE

De volgende SQL maakt een UNIQUE beperking in de "Id_P" kolom van de "Persons" tabel bij het aanmaken van de tabel:

MySQL:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (Id_P)
)

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
Id_P int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

Als je de UNIQUE beperking wilt naamgeven en een UNIQUE beperking voor meerdere kolommen wilt definiëren, gebruik dan onderstaande SQL syntaxis:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
)

SQL UNIQUE beperking op ALTER TABLE

Als de tabel al is gemaakt en je een UNIQUE beperking wilt maken in de "Id_P" kolom, gebruik dan de volgende SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD UNIQUE (Id_P)

Als je de UNIQUE beperking wilt naamgeven en een UNIQUE beperking voor meerdere kolommen wilt definiëren, gebruik dan onderstaande SQL syntaxis:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)

Intrekken UNIQUE beperking

Als je de UNIQUE beperking wilt intrekken, gebruik dan onderstaande SQL:

MySQL:

ALTER TABLE Persons
DROP INDEX uc_PersonID

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID