1、什么是索引
存储引擎以一种数据结构进行存储的数据。
这种数据结构的数据让我们查询数据时非常的高效

2、非常重要的索引类型
1)主键索引(primary key)
添加我们的主键:

alter table table_name add primary key (id)

删除主键:

alter table table_name drop primary key;

删除的时候,有自动增长的值,是不能进行删除的,先删除自动增长:

alter table innodb modify `id` int(11) unsigned NOT NULL;

2)唯一索引(unique key)
添加唯一索引:

alter table table_name add unique key 取个索引名(字段值)

删除唯一索引:

alter table table_name drop key 索引名称

重点介绍:
唯一索引可以在一张表里面有多个;值是不能重复的。
主键索引在工作中必需使用的;主键索引在一张表里面只有一个;值是不能重复的。

3)普通索引(key)
添加普通索引:

alter table table_name add key 取个索引名(字段)

删除普通索引:

alter table table_name drop key  取的索引名

特性:太普通了,可以有多个,可以重复值!

4)复合索引
添加复合索引:

alter table table_name add key 取个索引名(字段,字段)

删除它:

alter table table_name drop key 索引名

复合索引:就是上面的三个索引在设定字段值的时候,设定多个!
复合索引一般情况下,多是使用在普通索引上面的。

总结
添加索引的时候:
主键索引:表里面唯一的,值不能重复
alter table table_name add primary key (id)
唯一索引:表里面可以有多个,值不能重复
alter table table_name add unique key 索引名(字段)
普通索引:表里面可以有多个,值可以重复
alter table table_name add key 索引名(字段)
普通复合索引:
alter table table_name add key 索引名(字段,字段,……)

删除索引的时候:
主键索引:
alter table table_name drop primary key
唯一索引|普通索引|普通复合索引
alter table table_name drop key 索引名

复合索引 === 联合索引 这二个名称是一个意思!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注