oracle怎么轉移表的表空間

oracle中,可利用“alter table”語句轉移表的表空間,該語句可修改表的數據,與“move tablespace”配合使用就可移動表的表空間,語法為“alter table? 表名 move tablespace 新的表空間”。

oracle怎么轉移表的表空間

本教程操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle怎么轉移表的表空間

轉移表的表空間語法如下:

將表table_name 移動到新的new_tbsp表空間?

alter?table??table_name?move?tablespace?new_tbsp;

oracle怎么轉移表的表空間

生成指定tbsp_name表空間下的【所有表】生成移動new_tbsp表空間sql語句

select?'alter?table?'||?table_name||?'?move?tablespace?new_tbsp;'?from?user_tables?where?tablespace_name?=?'tbsp_name'

擴展:轉移不同的表空間

移動【索引】所在表空間:

如將索引index_name 移動到新的new_tbsp表空間(LOB數據類型的字段需按如下第3類處理)

alter?index?index_name?rebuild?tablespace?new_tbsp;

–生成指定user_name用戶下的【所有索引】生成移動new_tbsp表空間SQL語句

select?'alter?index?'||index_name||'?rebuild?tablespace?new_tbsp;'?from?user_indexes?where?table_owner?=?'user_name'

移動【二進制流字段】數據存儲表空間,如將表table_name中的二進制流字段col_name移動到new_tbsp表空間

alter?table?table_name?move?tablespace?new_tbsp??lob?(col_name)?store?as??(tablespace?new_tbsp);

–生成指定表table_name中為CLOB類型的字段的移動到new_tbsp 表空間SQL語句

select?'alter?table?'||?table_name||'?move?tablespace?new_tbsp?lob?('||?column_name||'?)?store?as??(tablespace?new_tbsp);'??from?user_tab_columns? where??data_type='CLOB'?and?table_name='table_name'

oracle怎么轉移表的表空間

oracle怎么轉移表的表空間

推薦教程:《Oracle視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊11 分享