一、Primary Key和Unique
Primary Key和Unique 都是一种约束(Constraint),都不允许列种存在重复值,不同的是:
- Primary Key:一个表只能有一个 PRIMARY KEY 约束,不允许有空值
- Unique :一个表可以有多个 UNIQUE 约束,允许存在空值
当向表中插入数据时,如果有约束列中有重复值,会报错
1062 - Duplicate entry '1' for key 'stuid'
表已经创建好之后添加Primary Key和Unique 约束
Alter table 表名称
add constraint 约束名称 primary key (列名称);
Alter table 表名称
add constraint 约束名称 unique(列名称);
删除Primary Key和Unique 约束
Alter table 表名称
drop primary key;
Alter table 表名称
drop index unique约束名称;
创建约束时没有定义约束名,如何删除约束?
第一步:输入以下语句,从CONSTRAINT_NAME 列找到系统自动定义的约束名
Select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE;
第二步:删除约束
二、Index
create index 语句用于为表创建索引,目的是为了提高查询速度。
创建一个简单的索引,允许有重复值
Create index 索引名称
on 表名称(需要索引的列);
创建一个唯一的索引,两行不允许拥有重复的索引值
Create unique index 索引名称
on 表名称(需要索引的列);
三、Primary Key 和Unique Index
创建primary key约束的同时会创建一个unique index。
网友评论