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;