SQL UNIQUE
Unikalna ograniczenie jednoznacznie identyfikuje każdy rekord w tabeli bazy danych.
Unikalny i klucz podstawowy ograniczenia zarówno dostarczyć gwarancję niepowtarzalności dla kolumna lub zestaw kolumn.
Ograniczenie na klucz podstawowy automatycznie ma UNIQUE zdefiniowany na nim.
Zauważ, że można mieć wiele ograniczeń UNIQUE na stole, ale tylko jedno ograniczenie PRIMARY KEY na stole.
SQL UNIQUE na CREATE TABLE
Poniższy SQL tworzy UNIQUE na "P_Id" kolumny, gdy "Persons" tworzenia tabeli:
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)
)
Aby umożliwić nazwanie UNIQUE, a do definiowania UNIQUE na wielu kolumnach, należy użyć następującej składni 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 UNIQUE na ALTER TABLE
Aby utworzyć UNIQUE na "P_Id" kolumny, gdy stół jest już utworzony, należy użyć następującego SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD UNIQUE (P_Id)
Aby umożliwić nazwanie UNIQUE, a do definiowania UNIQUE na wielu kolumnach, należy użyć następującej składni SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
Aby usunąć UNIQUE
Aby usunąć UNIQUE, należy użyć następującego SQL:
MySQL:
ALTER TABLE Persons
DROP INDEX uc_PersonID
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID