轻松上手,快乐学习!

SQL UNIQUE 约束


SQL UNIQUE 约束

UNIQUE约束确保列中的所有值都不同。 UNIQUE和PRIMARY KEY约束都为一列或一组列的唯一性提供了保证。 PRIMARY KEY约束自动具有UNIQUE约束。 每个表可以有许多UNIQUE约束,但每个表只有一个PRIMARY KEY约束。

CREATE TABLE上的SQL 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)
);

ALTER TABLE上的SQL UNIQUE约束

要在已创建表时在“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);

DROP UNIQUE的约束

要删除UNIQUE约束,请使用以下SQL: MySQL的:
ALTER TABLE Persons
DROP INDEX UC_Person;
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT UC_Person;