修改表及索引所属表空间
修改表及索引所属表空间
1、查询表所属表空间
SELECT TABLE_NAME,TABLESPACE_NAME, TABLE_NAME FROM USER_TABLES
ORDER BY TABLESPACE_NAME
2、修改表所属表空间
SELECT 'ALTER TABLE '||TABLE_NAME||' MOVE TABLESPACE BWMDM;' FROM USER_TABLES WHERE TABLESPACE_NAME = 'USERS'
3、查询索引所属表空间
SELECT INDEX_NAME, TABLESPACE_NAME, TABLE_NAME FROM USER_INDEXES WHERE TABLESPACE_NAME = 'USERS'
ORDER BY TABLESPACE_NAME
4、修改索引所属表空间
SELECT 'ALTER INDEX '|| INDEX_NAME ||' REBUILD TABLESPACE FCCMS;' FROM USER_INDEXES;
5、如果是CLOB或BLOB字段,需要单独再执行如下语句才能修改字段对应的表空间
SELECT 'ALTER TABLE ' || TABLE_NAME ||' MOVE TABLESPACE USERS LOB('||COLUMN_NAME||') STORE AS(TABLESPACE BWMDM);' FROM USER_TAB_COLS WHERE DATA_TYPE IN ('CLOB', 'BLOB')
AND TABLE_NAME IN (
SELECT TABLE_NAME FROM USER_INDEXES WHERE TABLESPACE_NAME = 'USERS' AND INDEX_NAME LIKE 'SYS%'
)