索引1

索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完整性检查。建立索引是一项技术性要求高的工作。一般在数据库设计阶段的与数据库结构一道考虑。应用系统的性能直接与索引的合理直接有关。下面给出建立索引的方法和要点。 
§3.5.1 建立索引 
1.      CREATE INDEX命令语法: 
  
CREATE INDEX 
CREATE [unique] INDEX [user.]index 
ON [user.]table (column [ASC | DESC] [,column 
[ASC | DESC] ] ... ) 
[CLUSTER [scheam.]cluster] 
[INITRANS n] 
[MAXTRANS n] 
[PCTFREE n] 
[STORAGE storage] 
[TABLESPACE tablespace] 
[NO SORT] 
Advanced 
  
其中: 
   schema     ORACLE模式,缺省即为当前帐户 
   index      索引名 
   table      创建索引的基表名 
   column     基表中的列名,一个索引最多有16列,long列、long raw 
              列不能建索引列 
   DESC、ASC 缺省为ASC即升序排序 
   CLUSTER    指定一个聚簇(Hash cluster不能建索引) 
   INITRANS、MAXTRANS   指定初始和最大事务入口数 
   Tablespace    表空间名 
   STORAGE       存储参数,同create table 中的storage. 
   PCTFREE       索引数据块空闲空间的百分比(不能指定pctused) 
   NOSORT        不(能)排序(存储时就已按升序,所以指出不再排序) 
  
  
2.建立索引的目的: 
  
建立索引的目的是: 
l       提高对表的查询速度; 
l       对表有关列的取值进行检查。 
  
但是,对表进行insert,update,delete处理时,由于要表的存放位置记录到索引项中而会降低一些速度。 
注意:一个基表不能建太多的索引; 
      空值不能被索引 
      只有唯一索引才真正提高速度,一般的索引只能提高30%左右。 
  
   Create index ename_in on emp (ename,sal);
posted @ 2012-11-07 21:16  My_World  阅读(166)  评论(0编辑  收藏  举报