Oracle11g預設對空表不分配segment,故使用exp匯出Oracle11g資料庫時,空表不會匯出! 1、設定deferred_segment_creation引數為FALSE後,無論是空表還是非控表,都分配segment。 在sqlplus命令視窗中,執行: SQL> show parameter deferred_segment_creation NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ deferred_segment_creation boolean TRUE SQL> alter system set deferred_segment_creation=false 2 ; System altered SQL> show parameter deferred_segment_creation NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ deferred_segment_creation boolean FALSE SQL> 該值設定後只對後面新增的表產生作用,對之前建立的空表不起作用! 2、使用 allocate extent 查詢空表資訊 select * from user_tables where num_rows=0 or num_rows is null; 形成有效的執行SQL語句 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 or num_rows is null; 執行如表ABC alter table ABC allocate extent;