数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle表、索引修改表空间语句


发布日期:2024年08月18日
 
Oracle表、索引修改表空间语句

表做空间迁移时使用如下语句

alter table tb_name move tablespace tbs_name;

索引表空间做迁移使用如下语句

alter index index_name rebuild tablespace tbs_name;

对于含有lob字段的表在建立时oracle会自动为lob字段建立两个单独的segment一个用来存放数据另一个用来存放索引并且它们都会存储在对应表指定的表空间中而例只能移动非lob字段以外的数据所以在对含有lob字段的表进行空间迁移需要使用如下语句

alter table tb_name move tablespace tbs_name lob (col_lobcol_lob) store as(tablesapce tbs_name);

项目实例

表空间迁移

select alter table ||table_name|| move tablespace tbs_name; table_name from dba_tables where owner=%***% and table_name like %***%

带lob字段

select alter table ||table_name|| move lob(||index_name||) store as (tablespace tbs_name); from dba_indexes where owner=%***% and index_name like %***%

索引表空间

select alter index ||index_name|| rebuild tablespace tbs_name; index_name from dba_indexes where owner=%***% and table_name like %***%

以上在oracle 的SQL*Plus Worksheet中运行将得出的运行结果再运行一次即可

上一篇:数据块转储及RDBA的转换

下一篇:mysql和oracle常用内容比较