MySQL UNIQUE 约束
MySQL UNIQUE 约束
UNIQUE 约束确保列中的所有值都不同。
UNIQUE 和 PRIMARY KEY 约束都保证了列或列集的唯一性。
PRIMARY KEY 约束自动拥有 UNIQUE 约束。
但是,每个表可以有多个 UNIQUE 约束,但每个表只能有一个 PRIMARY KEY 约束。
CREATE TABLE 上的 UNIQUE 约束
以下 SQL 在创建 "Persons" 表时,在 "ID" 列上创建了一个 UNIQUE 约束
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
UNIQUE (ID)
);要命名 UNIQUE 约束,以及在多个列上定义 UNIQUE 约束,请使用以下 SQL 语法
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT UC_Person UNIQUE (ID,LastName)
);ALTER TABLE 上的 UNIQUE 约束
在表已创建的情况下,要在 "ID" 列上创建 UNIQUE 约束,请使用以下 SQL
ALTER TABLE Persons
ADD UNIQUE (ID);要命名 UNIQUE 约束,以及在多个列上定义 UNIQUE 约束,请使用以下 SQL 语法
ALTER TABLE Persons
ADD CONSTRAINT UC_Person UNIQUE (ID,LastName);DROP a UNIQUE Constraint (删除 UNIQUE 约束)
要删除 UNIQUE 约束,请使用以下 SQL
ALTER TABLE Persons
DROP INDEX UC_Person;