创建索引可以大大提高系统的性能:
第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。
第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。
第四,在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
第五,通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。
使用索引的缺点:
第一,创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。
第二,索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。
第三,当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。
创建索引的注意事项:
第一,表的主键、外键必须有索引
第二,连接查询中使用的连接字段,在连接字段上应该建立索引
第三,经常出现在Where子句中的字段,应该建立索引
第四,索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引
第五,频繁进行数据操作的表,不要建立太多的索引
创建索引实例:
[
--创建普通索引
create index 索引名 on 表名 (列名); --单列
create index I索引名 on 表名 (列名[, 列名, ....]); --可以有多个列
--唯一索引
create unique 索引名 on 表名 (列名); --单列
create unique I索引名 on 表名 (列名[, 列名, ....]); --可以有多个列
]