1.创建索引
创建索引的基本语法:
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
[USING index_type]
ON tbl_name(index_col_name,...)
index_col_name : column_name[(length)][ASC | DESC]
- [UNIQUE|FULLTEXT|SPATIAL] 指定索引的类型
- index_name 索引的名称
- [USING index_type] 指定索引使用哪个类型,不指定默认使用的是B+树
- tbl_name(index_col_name,...) 对哪张表的哪些字段建立索引,tbl_name为表名,index_col_name为字段名
在MySQL数据库中,如果字段为主键,就会默认有一个主键索引。
现有表:

创建索引:

2.查看索引
语法:
show index from table_name;
- table_name是表名

- 这样显示太长了,可以在语法后面加\G

3.删除索引
语法:
DROP INDEX index_name ON tbl_name;

再次查找索引,就只剩默认的主键索引了:

4.通过Alert命令修改表并建立索引
alter table tb_name add primary key(column_list);
该语句添加一个主键,这意味着索引值必须是唯一的,且不能为NULL
alter table tb_name add unique index_name(column_list);
这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)
alter table tb_name add index index_name(column_list);
添加普通索引, 索引值可以出现多次。
alter table tb_name add fulltext index_name(column_list);
该语句指定了索引为FULLTEXT, 用于全文索引
网友评论