mysql的主键和索引
Posted 不放弃自己
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql的主键和索引相关的知识,希望对你有一定的参考价值。
-
主键是个什么?
我来来具体的东西说吧,书大家都看过吧,没看过的找本翻一下,看下它每页是不是有个页码,我们的数据表主键就相当于是这个页码,明白了吧。
-
那么索引是什么呢?
我们还拿书来说,索引相当于书的目录,有了目录我们可以很快的知道这本书的基本内容和结构,数据索引也一样,它可以加快数据表的查询速度。
- 单一主键:只用一列来唯一标识一行
create table user(
id varchar(4) primary key, # 单列主键
name varchar(4) not null,
email varchar(20) not null ,
efftflag varchar(1) not null
)
- 添加主键
ALTER TABLE `student` add PRIMARY key (s_id);
- 删除主键
ALTER TABLE `student` drop PRIMARY key;
- 添加索引
ALTER TABLE student ADD INDEX index_id (s_id);
- 删除索引
ALTER TABLE student drop index index_id;
- 两者之间的关系:
主键是一定是唯一性索引,但唯一性索引不一定是主键
主键列不能为空,但唯一索引列可以为空
一张表只能有一个主键,但可以有多个索引
以上是关于mysql的主键和索引的主要内容,如果未能解决你的问题,请参考以下文章
MySQL简述 MySQL 的主键 PRIMARY KEY 和唯一键 UNIQUE INDEX