一、索引分类
- 单值索引:即一个索引只包含单个列,一个表可以有多个单列索引
- 唯一索引:索引列的值必须唯一,但允许有空值
- 复合索引:即一个索引包含多个列
二、创建索引
InnoDB存储引擎会自动为主键约束、唯一约束、外键约束创建索引
create [unique] index index_name on table_name(column_name(length));
alter table_name add [unique] index [index_name] on (column_name(length));
三、删除索引
drop index [index_name] on table_name;
四、alter创建索引
-- 该语句添加一个主键,这意味着索引值必须是唯一的,且不能为NULL。
alter table table_name add primary key(column_list);
-- 这条语句创建索引的值必须是唯一的(除了null外,null可能会出现多次)。
alter table table_name add unique index_name(column_list);
-- 添加普通索引,索引值可出现多次。
alter table table_name add index index_name(column_list);
-- 该语句指定了索引了FULLTEXT,用于全文索引。
alter table table_name add fulltext index_name(column_list);
五、查看索引
show index from table_name;