程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> 11g Oracle導出表 默認不導出數據為空的表解決,11goracle

11g Oracle導出表 默認不導出數據為空的表解決,11goracle

編輯:Oracle教程

11g Oracle導出表 默認不導出數據為空的表解決,11goracle


11g oracle導出表時會默認不導出數據為空

1、Oracle11g默認對空表不分配segment,故使用exp導出Oracle11g數據庫時,空表不會導出。  
2、設置deferred_segment_creation 參數為FALSE後,無論是空表還是非空表,都分配segment。  
   在sqlplus中,執行如下命令: 
   SQL>alter system set deferred_segment_creation=false;    查看: 
   SQL>show parameter deferred_segment_creation; 
   該值設置後只對後面新增的表產生作用,對之前建立的空表不起作用。

解決方案:

1.用以下這句查找空表並生成執行命令
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;

2.將查詢結果的內容導出,執行導出的語句。

3.然後再用exp的方式去導出數據庫,就可以完整的導出包括空表的數據庫。


oracle11g導出數據庫時怎設置把空表也導出

1 將數據庫TEST完全導出,用戶名system 密碼manager 導出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
2 將數據庫中system用戶與sys用戶的表導出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
 

oracle11g導出數據庫時怎設置把空表也導出

看看這個文檔,一目了然

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved