转载请注明:来自http://blog.youkuaiyun.com/M_ChangGong/ 作者:张燕广
关键字:Oracle 表空间 移动表空间
-----------------------------对表进行表空间移动操作-----------------------------
如果有一张表ACCOUNTS存放在表空间EXAMPLE下
现在要把表ACCOUNTS移动到表空间DEMO下,该怎么操作?
操作语句如下:
ALTER TABLE ACCOUNTS MOVE TABLESPACE DEMO;
COMMIT;
ACCOUNTS表的结构和数据会一起被移动到表空间demo下。
如果要把表空间example下的所有表全部移动到表空间demo下该怎么操作?
操作语句如下:
SELECT 'ALTER TABLE '||TABLE_NAME||' MOVE TABLESPACE DEMO;
COMMIT;' FROM USER_TABLES WHERE TABLESPACE_NAME='EXAMPLE';
-----------------------------对索引进行表空间移动操作--------------------------
如果ACCOUNTS表上有索引BMI_ACCOUNTS,表ACCOUNTS被移动到表空间demo后,
其索引BMI_ACCOUNTS并不会自动被移动到表空间DEMO中。
移动索引的表空间改怎么操作?
ALTER INDEX BMI_ACCOUNTS REBUILD TABLESPACE DEMO;
COMMIT;
如果要把表空间EXAMPLE下的所有索引移动到表空间DEMO下该怎么操作?
操作语句如下:
SELECT 'ALTER INDEX '||INDEX_NAME||' REBUILD TABLESPACE DEMO;
COMMIT;' FROM USER_INDEXES WHERE TABLESPACE_NAME='EXAMPLE';
本文介绍了如何在Oracle数据库中将表和索引从一个表空间移动到另一个表空间。具体操作包括单个表的移动、整个表空间下所有表的移动,以及索引的单独移动。移动表的SQL语句为`ALTER TABLE [表名] MOVE TABLESPACE [目标表空间];`,移动索引的语句为`ALTER INDEX [索引名] REBUILD TABLESPACE [目标表空间];`。
1592

被折叠的 条评论
为什么被折叠?



