修改表所在的表空間以下所示:oracle
A、單個修改:ui
alter table TABLE_NAME(表名) move tablespace TABLESPACENAME(其餘表空間名) spa
B、批量修改索引
①查詢當前用戶下的全部表 table
select 'alter table '|| table_name ||' move tablespace tablespacename;' from user_all_tables; select
②生成腳本——執行全部查詢出的語句數據類型
C、補充:語法
select 'alter table '|| table_name ||' move tablespace SMS_WORK;' from user_all_tables where tablespace_name !='SMS_WORK';數據
修改索引所在的表空間以下所示:腳本
A、oracle移動普通索引到其餘表空間語法:(單個修改)
alter index 索引名 rebuild tablespace 其餘表空間;
例:alter index ID rebuild tablespace GP_INDEX;
B、使用腳本執行查詢的結果,這樣就能夠批量處理
①查詢當前用戶下的全部索引:
select 'alter index '|| index_name ||' rebuild tablespace GP_INDEX(索引表空間);' from user_indexes;
②生成腳本——執行全部查詢出的語句
注意:
若是索引的所在列的數據類型爲lob,則沒法遷移索引,遷移時會報錯:沒法以數據類型 LOB 的表達式建立索引