唯一键是一组表的一个或多个字段/列唯一标识数据库表中的记录。
你可以说,这是有点像主键,但它只能接受一个空值,它不能有重复的值。
唯一键和主键都提供了独特的一列或一组列的保证。
【SQL UNIQUE KEY唯一键】有一个主键约束内的自动定义的唯一键约束。
可能有许多独特的键约束为一个表,但只有一个一个表的主键约束。
SQL唯一键约束的CREATE TABLE:
如果你想在“S_ID”列创建UNIQUE约束的“学生”创建表时,可以使用下面的SQL语法:
SQL服务器/甲骨文/ MS访问:
(定义上单列唯一键约束):
CREATE TABLE students
(
S_Id int NOT NULL UNIQUE,LastName varchar (255) NOT NULL,FirstName varchar (255),City varchar (255)
)
MySQL的:
CREATE TABLE students
CREATE TABLE students
(
S_Id int NOT NULL,LastName varchar (255) NOT NULL,FirstName varchar (255),City varchar (255),UNIQUE (S_Id)
)
(多个列定义唯一键约束):
MySQL的/ SQL服务器/甲骨文/ MS访问:
CREATE TABLE students
(
S_Id int NOT NULL,LastName varchar (255) NOT NULL,FirstName varchar (255),City varchar (255),CONSTRAINT uc_studentId UNIQUE (S_Id,LastName)
)
在ALTER TABLE SQL唯一键约束:
如果你想在“S_ID”列上创建一个唯一约束已创建表时,应使用下面的SQL语法:
(定义上单列唯一键约束):
MySQL的/ SQL服务器/甲骨文/ MS访问:
ALTER TABLE students
ADD UNIQUE (S_Id)
(多个列定义唯一键约束):
MySQL的/ SQL服务器/甲骨文/ MS访问:
ALTER TABLE students
ADD CONSTRAINT uc_StudentId UNIQUE(S_Id,LastName)
DROP语法一个外键约束:
如果你想删除UNIQUE约束,使用下面的SQL语法:
MySQL的:
ALTER TABLE students
DROP INDEX uc_studentID
SQL服务器/甲骨文/ MS访问:
ALTER TABLE students
DROP CONSTRAINT uc_studentID
推荐阅读
- SQL 备用键
- SQL复合键
- SQL FOREIGN KEY外键
- SQL PRIMARY KEY主键
- SQL CROSS JOIN交叉连接查询
- SQL FULL JOIN全连接查询
- SQL LEFT JOIN左连接查询
- SQL RIGHT JOIN右连接查询
- SQL JOIN查询语句