Ograniczenie UNIQUE w SQL
- Poprzednia strona SQL Not Null
- Następna strona Klucz główny SQL
Ograniczenie UNIQUE w SQL
Konwersja UNIQUE unikalnie identyfikuje każda rekord w tabeli bazy danych.
Konwersje UNIQUE i PRIMARY KEY zapewniają unikalność dla kolumn lub zbiorów kolumn.
PRIMARY KEY ma automatycznie zdefiniowaną unikalną konwersję.
Proszę zauważyć, że każda tabela może mieć wiele unikalnych konwersji, ale może mieć tylko jedną konwersję PRIMARY KEY.
UNIQUE Constraint na CREATE TABLE SQL
Poniższy SQL tworzy unikalną konwersję w kolumnie "Id_P" podczas tworzenia tabeli "Persons":
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) )
Jeśli chcesz nazwać unikalne ograniczenie oraz zdefiniować unikalne ograniczenie dla wielu kolumn, użyj poniższego składni SQL:
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) )
Unikalne ograniczenie SQL w ALTER TABLE
Gdy tabela została już utworzona, aby utworzyć unikalne ograniczenie w kolumnie "Id_P", użyj poniższego SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD UNIQUE (Id_P)
Aby nazwać unikalne ograniczenie i zdefiniować unikalne ograniczenie dla wielu kolumn, użyj poniższego składni SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
Anuluj unikalne ograniczenie
Aby anulować unikalne ograniczenie, użyj poniższego SQL:
MySQL:
ALTER TABLE Persons DROP INDEX uc_PersonID
SQL Server / Oracle / MS Access:
ALTER TABLE Persons DROP CONSTRAINT uc_PersonID
- Poprzednia strona SQL Not Null
- Następna strona Klucz główny SQL