EXP导出空表

在使用exp导出时,由于ORACLE为了节省空间,如果表中的记录为0,则ORACLE不会为表分配空间,exp导出时,不会导出记录数为0的表,在导入后,会导致程序发生错误。

为解决这种情况,最好在导出前执行如下SQL:

select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;

查询结果:

alter table ZX_NMRMS_BATCH allocate extent;

alter table ZX_GPCS_DIRECT_SUPPLY_DTL allocate extent;

alter table ZX_GPCS_DIRECT_SUPPLY_DOC allocate extent;

将查询结果的SQL,数据库执行成功后,再导出数据库,即可避免导出DMP文件中不包含空表的情况。

操作Oracle数据库使用的账号是为system

举报
评论 0