SQL UNIQUE omezení
SQL UNIQUE omezení
Omezení UNIQUE
zajišťuje, že všechny hodnoty ve sloupci jsou různé.
Omezení UNIQUE
a
PRIMARY KEY
poskytují záruku jedinečnosti pro sloupec nebo sadu sloupců.
Omezení PRIMARY KEY
má automaticky
UNIQUE
omezení.
Můžete však mít mnoho UNIQUE
omezení na tabulku, ale pouze jedno
PRIMARY KEY
omezení na tabulku.
SQL UNIQUE omezení na CREATE TABLE
Následující SQL vytvoří UNIQUE
omezení pro sloupec "ID" při vytvoření tabulky "Osoby":
SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
ID int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int
);
MySQL:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
UNIQUE (ID)
);
Chcete-li pojmenovat UNIQUE
omezení a definovat
UNIQUE
omezení pro více sloupců, použijte následující syntaxi SQL:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT UC_Person UNIQUE (ID,LastName)
);
Omezení SQL UNIQUE na ALTER TABLE
Chcete-li vytvořit UNIQUE
omezení pro sloupec "ID", když je tabulka již vytvořena, použijte následující SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD UNIQUE (ID);
Chcete-li pojmenovat UNIQUE
omezení a definovat
UNIQUE
omezení pro více sloupců, použijte následující syntaxi SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT UC_Person UNIQUE (ID,LastName);
ZRUŠTE UNIKÁTNÍ omezení
Chcete-li zrušit UNIQUE
omezení, použijte následující SQL:
MySQL:
ALTER TABLE Persons
DROP INDEX UC_Person;
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT UC_Person;