优点:加快数据定位速度,大大降低I/O的速度,从而提高SQL语句的访问性能
分类:单列索引和复合索引,惟一索引和非惟一索引
建立索引:
同一张表可以建立多个索引,但要求列的组合必须不同(包括列的先后顺序)
eg: create index A_idx1 on A (a1,a2);-----复合索引(多个列所建立的索引)
create index A_idx2 on A(a2,a1); 均可以
建立惟一索引: create unique index i_a1 on A (a1) (该列a1不能重复)
建立索引的方针:
1.索引必须建立在Where子句经常引用到的表列上(如果在大表上频繁使用某列或某几列作为条件执行检索操作,并且检索行数低于总行数的15%,那么应该考虑在这些列上建立索引);
2.为了提高多表连接的性能,应该在连接列上建立索引;
3.如果经常需要基于某列或某几列执行排序操作,在这些列上建立索引,可以加快数据排序的速度;
4.不要在小表上建立索引。
删除索引:drop index i_a1;
重建索引:alter index i_a1 rebuild online;
1.建立序列
create sequence a1_seq start with 50 increment by 1 maxvalue 99 cache10 ----建立了一个以50开始的序列,逐次加1,最大值为99的序列 ,cache 10表示缓冲值为10