读书人

Oracle 数据库批改索引表空间

发布时间: 2012-07-28 12:25:13 作者: rapoo

Oracle 数据库修改索引表空间
Oracle 数据库修改索引表空间,包括修改表的表空间、修改索引的表空间、修改有CLOB字段的表空间等。
修改表空间语法

1、修改表的表空间

以下为引用内容:

alter table TABLENAME move tablespace TABLESPACENAME;


2、修改索引的表空间

以下为引用内容:
alter index INDEXNAME rebuild tablespace TABLESPACENAME;




3、修改有 CLOB 字段的表空间

以下为引用内容:
alter table TABLENAME move tablespace TABLESPACENAME lob(COLUMNNAME) store as(tablespace TABLESPACENAME);


修改表空间示例

修改表

以下为引用内容:
select 'alter table '||a.table_name||' move tablespace workflow;',a.owner,a.table_name,a.tablespace_name,a.* from dba_tables a where a.Owner='ERMIS_SHANXI'order by a.owner,a.table_name;


修改索引

以下为引用内容:
select 'alter index '||a.index_name||' rebuild tablespace workflow;',a.owner,a.index_name,a.tablespace_name,a.* from dba_indexes a where a.Owner='ERMIS_SHANXI'order by a.owner,a.table_name;


修改 clob 索引

以下为引用内容:
ALTER TABLE WF_H_PROCESSINSTATTR MOVE TABLESPACE WORKFLOW LOB (ATTRIBUTE) STORE AS(TABLESPACE WORKFLOW);



如果遇见大字段,增加一个属性:

    select 'alter index '||a.index_name||' rebuild tablespace VASD;',      a.owner,a.index_name,a.tablespace_name,a.* from dba_indexes a       where a.Owner='CMS200BJ2'      and index_type='NORMAL'    order by a.owner,a.table_name;                      select 'alter index '||a.index_name||' rebuild tablespace VASD;',      a.owner,a.index_name,a.tablespace_name,a.* from dba_indexes a       where a.Owner='CMS200BJ2'      and index_type='LOB'    order by a.owner,a.table_name;  


先查询所有涉及到大字段的表
SELECT DISTINCT a.table_name           FROM dba_indexes a          WHERE a.owner = 'CMS200BJ2' AND index_type = 'LOB'


一个一个拼吧

读书人网 >其他数据库

热点推荐