Chinaunix首页 | 论坛 | 博客
  • 博客访问: 669829
  • 博文数量: 759
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 4845
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-27 13:51
文章分类

全部博文(759)

文章存档

2011年(1)

2008年(758)

我的朋友

分类:

2008-10-27 13:58:23


   在ORACLE里除了我们常用的B树索引外,还有一些特殊索引能被使用。
  
   如:倒序索引,位映射索引,函数索引等。
  
   我根据自己的体会,列一个注意事项:
  
   倒序索引:
  
   ORACLE DOC上说倒序索引比较适合于序列号产生的字段,如唯一编号。
  
   但是这样的索引对于范围的比较,如 > < between ... and ... 等操作是不起作用的;
   只对 = in 等操作才会调用索引。
  
   所以一般的自动增长的PK字段还是用常规B树索引好一些。
  
   位映射索引:
  
   适合于唯一记录数较少,DML操作较少的字段。如历史数据表里的类别字段。
  
   它可以减少索引空间的占用,并提高访问速度。
  
   最好在查询时加提示/*+ first_rows */ 或者 /*+ index(表名 索引名)*/ 确认使用位映射索引。
  
   函数索引:
  
   需要修改数据库里面两个动态参数:
  
   QUERY_REWRITE_ENABLED=TRUE
   QUERY_REWRITE_INTEGRITY=TRUSTED
  
   函数索引才会在有提示/*+ first_rows */ 或者 /*+ index(表名 索引名)*/ 时被使用。
  
【责编:admin】

--------------------next---------------------

阅读(220) | 评论(0) | 转发(0) |
0

上一篇:优化,提高速度

下一篇:ORACLE锁的管理

给主人留下些什么吧!~~