注册
批量将分区表改为非分区表

批量将分区表改为非分区表

XGQ 2026/09/18 185 0 0
摘要 --从Oracle迁移到达梦 需要将分区表统一转换为非分区表

1.首次迁移时用dmdts只迁移表结构,使用以下脚本统一转换后,再次使用dmdts工具迁移数据、索引等其他对象

V_SQL_CREATE VARCHAR(32767);
V_SQL_DROP VARCHAR(1000);
BEGIN
for i in (
select OWNER,table_name,substr(dbms_metadata.get_ddl('TABLE',table_name,OWNER),1,instr(dbms_metadata.get_ddl('TABLE',table_name,OWNER),'PARTITION BY')-1)||';'
       TABLE_DDL
  from dba_tables
 where PARTITIONED='YES'
   and owner='用户名') loop
   V_SQL_DROP:='DROP TABLE IF EXISTS 用户名.'||I.TABLE_NAME;
   EXECUTE IMMEDIATE V_SQL_DROP;
   V_SQL_CREATE:=I.TABLE_DDL;
   EXECUTE IMMEDIATE V_SQL_CREATE;
END LOOP;
end;

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服