oracle分区表local索引,【eygle】Oracle的分区表和Local索引创建与维护

Oracle的分区技术在某些条件下可以极大的提高查询的性能,所以被广泛采用。

从产品上说,分区技术是Oracle企业版中独立收费的一个组件。

以下是对于分区及本地索引的一个示例。

首先根据字典表创建一个测试:

SQL> connect eygle/eygle

Connected.

SQL> CREATE TABLE dbobjs

2  (OBJECT_ID        NUMBER NOT NULL,

3  OBJECT_NAME      varchar2(128),

4  CREATED          DATE  NOT NULL

5  )

6  PARTITION BY RANGE (CREATED)

7  (PARTITION dbobjs_06 VALUES LESS THAN (TO_DATE('01/01/2007', 'DD/MM/YYYY')),

8  PARTITION dbobjs_07 VALUES LESS THAN (TO_DATE('01/01/2008', 'DD/MM/YYYY')));

Table created.

SQL> COL segment_name for a20

SQL> COL PARTITION_NAME for a20

SQL> SELECT segment_name, partition_name, tablespace_name

2    FROM dba_segments

3  WHERE segment_name = 'DBOBJS';

SEGMENT_NAME        PARTITION_NAME      TABLESPACE_NAME

-------------------- -------------------- ------------------------------

DBOBJS              DBOBJS_06            EYGLE

DBOBJS              DBOBJS_07            EYGLE

创建一个索引,注意这里可以将不同分区的索引指定创建到不同的表空间:

SQL> CREATE INDEX dbobjs_idx ON dbobjs (created) LOCAL

2  (PARTITION dbobjs_06 TABLESPACE users,

3    PARTITION dbobjs_07 TABLESPACE users

4    );

Index created.这个子句可以进一步调整为类似:

CREATE INDEX dbobjs_idx ON dbobjs (created) LOCAL

(PARTITION dbobjs_06 TABLESPACE users,

PARTITION dbobjs_07 TABLESPACE users

) TABLESPACE users;通过统一的tablespace子句为索引指定表空间。

S

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值