MySQL索引

来源:互联网 发布:sql 更新语句 编辑:程序博客网 时间:2024/06/14 17:33

索引分为:普通索引,唯一索引,主键,全文索引,哈希索引

普通索引:最基本的索引,没有唯一性(INDEX关键字)

唯一索引:有唯一性(UNIQUE关键字)

主键:唯一性索引关键字PRIMARY KEY每个表只能有一个主键

全文索引:全文索引的类型为FUULLTEXT全文索引只能在VARCHAR,CHAR类型的列上创建并且表必须为MyISAM类型

哈希索引:表类型为MEMORY或HEAP时支持哈希索引。哈希索引不需要建立树结构,但所有的值都保存在一个列表中,此类表指向相关的页与行


创建索引的有优缺点:

优点:

创建索引可以大大 高系统的性能。

第一, 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。

第二, 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。

第三, 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 

第四, 在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序 的时间。

第五, 通过使用索引,可以在查询的过程中,使用优化隐藏器, 高系统的性能。 

缺点:

第一, 创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。 

第二, 索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的 物理空间,如果要建立聚簇索引,那么需要的空间就会更大。

第三, 当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就 降低了数据的维护速度。