数据库创建索引的一些原则

一,经常被用来过滤记录的字段。

1. primary key 字段, 系统自动创建主键的索引;

2. unique kye 字段,系统自动创建对应的索引;

3. foreign key 约束所定义的作为外键的字段;

4. 在查询中用来连接表的字段;

5. 经常用来作为排序(order by 的字段)基准的字段;


二. 索引会占用磁盘空间,创建不必要的索引只会形成浪费.

三. 索引的创建必须考虑数据的操作方式。

1.内容很少变动,经常被查询,为它多创建几个索引無所谓;

2.经常性,例行性变动的表而言,则需要谨慎地创建确实必要的索引;


四. primary key 和 unique key的区别
1. 作为Primary Key的域/域组不能为null。而Unique Key可以。
2. 在一个表中只能有一个Primary Key,而多个Unique Key可以同时存在。
更大的区别在逻辑设计上, Primary Key一般在逻辑设计中用作记录标识,这也是设置
Primary Key的本来用意, 而Unique Key只是为了保证域/域组的唯一性。


五,复合索引和单一索引

  复合索引是指多字段联合索引,查询时经常需要这几个字段组合一起为条件再查询
  唯一索引主要是用主键ID索引,存储结构顺序与物理结构一致

如:create  index  idx  on  tbl(a,b) 
 先按a排序, a相同的按b排序,所以当你查a或ab的时候,
能够利用到这个索引.但当你只查b的时候,索引对你的帮助不大.可能可以跳跃查找.


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/tenfyguo/archive/2009/03/09/3974448.aspx

posted @ 2010-09-08 16:57  大斌  阅读(452)  评论(0编辑  收藏  举报