首页 > 代码库 > Oracle 批量修改某个用户下表的表空间
Oracle 批量修改某个用户下表的表空间
说明:一般来说要修改表的表空间需要同时修改表的表空间和其对应的索引表空间,并且在修改含有BOLB字段的表的表空间时又不一样,具体请参考末尾的链接
思路:拼凑一个满足条件的批处理查询语句,将查询的结果复制出来作为批处理语句执行。具体步骤如下:
1、写查询
--查询某个用户下的表,并生成一个修改其命名空间的批处理语句 select ‘alter table ‘|| table_name ||‘ move tablespace 要迁入的表空间;‘ from dba_tables t where t.owner=‘要迁出的表归属的用户名‘;
补充:
--查询当前库下所有的表 SELECT * FROM DBA_TABLES --可以加入筛选条件 SELECT * FROM DBA_TABLES WHERE TABLE_NAME LIKE ‘EM_%‘ SELECT * FROM DBA_TABLES WHERE OWNER=‘某个用户名‘; --查询用户表 SELECT * FROM USER_TABLES
2、执行查询结果,得到一个批处理语句,截图如下:
3、复制出查询结果,批处理执行
参考网站(请关注):ORACLE修改用户表所属表空间的步骤
Oracle 批量修改某个用户下表的表空间
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。