UNIQUE约束确保一列中的所有值都是唯一的。
创建表"Persons"时,以下SQL在"ID"列上创建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) );
要在已经创建表之后在"ID"列上创建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;