UNIQUE約束確保一列中的所有值都是唯一的。
創(chuàng)建表"Persons"時,以下SQL在"ID"列上創(chuàng)建UNIQUE約束:
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) );
要命名UNIQUE約束并在多個列上定義UNIQUE約束,請使用以下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) );
要在已經(jīng)創(chuàng)建表之后在"ID"列上創(chuàng)建UNIQUE約束,請使用以下SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD UNIQUE (ID);
要命名UNIQUE約束并在多個列上定義UNIQUE約束,請使用以下SQL語法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD CONSTRAINT UC_Person UNIQUE (ID,LastName);
要刪除UNIQUE約束,請使用以下SQL:
MySQL:
ALTER TABLE Persons DROP INDEX UC_Person;
SQL Server / Oracle / MS Access:
ALTER TABLE Persons DROP CONSTRAINT UC_Person;