如何解决Oracle11g使用dmp命令无法导出空表问题
oracle使用命令行exp命令或者使用plsql导出数据库时,数据库中没有数据的表不会导出。
exp user/password@orcl full=y file=文件名及路径
导出显示空表不存在。
imp user/123456@ip:1521/orcl file=文件名及路径 full=y ignore=y
解决
1执行 alter system set deferred_segment_creation=false;
2 查询一下当前用户下的所有空表
select table_name from user_tables where NUM_ROWS=0;
3 然后用以下SQL语句组装得到查询结果
select ‘alter table ‘||table_name||’ allocate extent;’ from user_tables where num_rows=0
把上一步得到的查询结果,一一执行

当使用Oracle11g的exp命令或PL/SQL导出数据库时,遇到空表无法导出的问题,可以采取如下步骤解决:1) 执行`ALTER SYSTEM SET DEFERRED_SEGMENT_CREATION=false;`;2) 查询并列出所有空表;3) 对空表执行`ALTER TABLE`分配扩展。此方法帮助用户成功导出包含空表的数据。
1238

被折叠的 条评论
为什么被折叠?



