oracle 数据库空表导出问题,有如下解决命令。
1. 没有建立或导入数据表前,执行如下命令修改状态(建立完数据库后就应该先修改状态):
alter system set deferred_segment_creation=false;
查询状态: show parameter deferred_segment_creation
2.已经建立表后,即便修改以上状态,也无法将执行以上命令前已经建立的空表导出(即建库的时候没有执行可以导出空表命令的,可以通过本条命令导出所有表),需要执行如下命令:
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
执行上面语句,将查询结果复制到 plsql 中执行。
1. 没有建立或导入数据表前,执行如下命令修改状态(建立完数据库后就应该先修改状态):
alter system set deferred_segment_creation=false;
查询状态: show parameter deferred_segment_creation
2.已经建立表后,即便修改以上状态,也无法将执行以上命令前已经建立的空表导出(即建库的时候没有执行可以导出空表命令的,可以通过本条命令导出所有表),需要执行如下命令:
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
执行上面语句,将查询结果复制到 plsql 中执行。