oracle怎么转移表的表空间

2023年 4月 17日 36.7k 0

oracle中,可利用“alter table”语句转移表的表空间,该语句可修改表的数据,与“move tablespace”配合使用就可移动表的表空间,语法为“alter table 表名 move tablespace 新的表空间”。 本教

oracle中,可利用“alter table”语句转移表的表空间,该语句可修改表的数据,与“move tablespace”配合使用就可移动表的表空间,语法为“alter table 表名 move tablespace 新的表空间”。

本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。

oracle怎么转移表的表空间

转移表的表空间语法如下:

将表table_name 移动到新的new_tbsp表空间

alter table table_name move tablespace new_tbsp;

01.png

生成指定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'

02.png

03.png

推荐教程:《Oracle视频教程》

以上就是oracle怎么转移表的表空间的详细内容,更多请关注每日运维其它相关文章!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论