Ultimele tutoriale de dezvoltare web
 

SQL Constrângere unică


SQL UNIC Constrângere

Constrângerea UNIQUE identifică în mod unic fiecare înregistrare într-un tabel de baze de date.

Unicele și PRIMARĂ Constrângerile CHEIE ambele furnizează o garanție pentru unicitate pentru o coloană sau un set de coloane.

O constrângere cheie primara are automat o constrângere unică definită pe ea.

Rețineți că puteți avea mai multe constrângeri unice pentru fiecare masa, dar numai o constrângere cheie primara pentru fiecare tabel.


SQL UNIC Constrângerea pe CREATE TABLE

Următoarele SQL creează o constrângere unică pe "P_Id" coloana atunci când "Persons" este creat tabel:

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)
)

Pentru a permite numirea unui constrângere unică, cât și pentru definirea unei constrângeri unice pe mai multe coloane, utilizați următoarea sintaxă 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 UNIC Constrângerea pe ALTER TABLE

Pentru a crea o constrângere unică pe "P_Id" coloana atunci când tabela este deja creată, utilizați următoarea SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD UNIQUE (P_Id)

Pentru a permite numirea unui constrângere unică, cât și pentru definirea unei constrângeri unice pe mai multe coloane, utilizați următoarea sintaxă SQL:

MySQL / SQL Server / Oracle / MS Access:

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

Pentru a DROP un unic Constrângere

Pentru a elimina o constrângere unică, folosiți următoarele SQL:

MySQL:

ALTER TABLE Persons
DROP INDEX uc_PersonID

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID