作为程序员一定要保持良好的睡眠,才能好编程

Mysql索引的使用

发布时间:2015-12-04

Mysql索引

Mysql索引的建立对于mysql高效的运行是很重要的,索引可以大大提高mysql的检索速度。

打个比方:合理的设计且建立好的索引的Mysql是一车兰博基尼的话,那么没有设计和不使用索引的话就是一辆人力三轮车。

创建索引时,你需要确保该索引是应用在sql查询语句的条件(一般作库where子句的条件)。

实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录。

上面静说索引的好处了,那么索引有没有坏处呢?

这不用质疑,是有的,建立索引虽然查询的速度快了,但它更新、插入、删除这几个操作的速度会相对来说慢下来。

因为你的每一次操作不仅要去修改数据表还需要去更新索引。

建立索引会占用磁盘的空间。



普通索引:


创建索引

这是基本的索引,它没有任何的限制,它有以下几种创建方式:

create index indexName on mytable(username(length));

这样就创建了索引,下面我们来


使用alter命令添加和删除

alter table nav add primary key(id); 该语句添加一个主键,这意味着索引值是唯一的,且不能为null

alter table nav add unique indexName(column) ; ps:indexName可以随便起名,column是表中你要添加索引的字段。 添加唯一字段,必须唯一,但null可以出现多次。


alter table nav add index indexName(column) 这是添加普通索引,索引值可能会出现多次。

alter table nav add full_text indexName(column) 用于全文索引



使用alter命令添加和删除主键

alter table nav modify id int not null;  在nav表中加上一个字段

alter table nav add primary key (id);   在新加上的这个字段 尖 加上主键


显示索引信息

show index form nav\G;