Maison >base de données >tutoriel mysql >Oracle之索引(Index)实例讲解

Oracle之索引(Index)实例讲解

WBOY
WBOYoriginal
2016-06-07 16:45:511499parcourir

Oracle索引(Index)是关系数据库中用于存放表中每一条记录位置的一种对象,主要目的是加快数据的读取速度和数据的完整性检查。索引

Oracle索引(Index)是关系数据库中用于存放表中每一条记录位置的一种对象,主要目的是加快数据的读取速度和数据的完整性检查。索引的建立是一项技术性要求非常高的工作。

一般在数据库设计阶段就要考虑到如何设计和创建索引。

1. 创建索引

创建索引的语法:

 CREATE [UNIQUE] INDEX [schema.] index
ON [schema.] table (column [ASC | DESC], column [ASC | DESC]...)
[CLUSTER schema.cluster]
[INITRANS n]
[MAXTRANS n]
[PCTFREE  n]
[STORAGE storage]
[TABLESPACE tablespace]
[NO SORT]

关键字说明:

示例:创建一张产品表(tb_product),为该表的product_id列创建索引,以便在使用到该列时提高查询效率。

create table tb_product
(
  product_id              number
, product_name            varchar2(100)
, product_type            varchar2(20)
, product_unit            varchar2(50)
, product_unit_price      number(10,4)
);

下面代码用来在product_id列上创建唯一索引:

create unique index product_id_u1 on tb_product(product_id);

2. 修改索引

索引的修改主要由数据库管理员完成,,修改索引主要涉及到修改索引的存储参数、重建索引、对无用的索引空间进行合并等。

修改索引的语法:

ALTER [UNIQUE] INDEX [user.] index
INITRANS n
MAXTRANS n
REBUILD
[STORAGE ]

说明:

示例:

使用ALTER INDEX语句修改索引参数:

ALTER INDEX product_id_u1 REBUILD STORAGE  ( INITIAL 1M NEXT 512K );

使用ALTER INDEX语句修改索引为逆向索引:

ALTER INDEX product_id_u1 REBUILD REVERSE;

使用ALTER INDEX语句合并索引空间:

ALTER INDEX product_id_u1 COALESCE;

3. 删除索引

可以使用DROP语句删除索引。

DROP INDEX schema.index;

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

Oracle性能优化 之 共享池

作者: 戴维德 联系方式:david.louis.tian@outlook.com

本文永久更新链接地址:

linux

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Oracle block corrupt 坏块Article suivant:DBMS_REPAIR包使用详解