expdp impdp中 exclude/include 的使用


exclude和include參數能夠在使用expdp或impdp是對特定的對象或對象類型進行篩選或過濾。比如因工作的需要導出特定的表或不導出特定
的表、視圖以及存儲過程、索引、約束、授權統計信息等等。下面將給出expdp或impdp使用exclude和include參數的方法和示例。

 

一、exclude/include參數用法:

    EXCLUDE=[object_type]:[name_clause],[object_type]:[name_clause]  -->排出特定對象

    INCLUDE=[object_type]:[name_clause],[object_type]:[name_clause]  -->包含特定對象

    object_type子句用於指定對象的類型,如table,sequence,view,procedure,package等等
    name_clause子句可以為SQL表達式用於過濾特定的對象名字。它由SQL操作符以及對象名(可使用通配符)來過濾指定對象類型中的特定對象。
    當未指定name_clause而僅僅指定object_type則所有該類型的對象都將被過濾或篩選。多個[object_type]:[name_clause]中間以逗號分割。

    示例:
       expdp <other_parameters> SCHEMAS=scott EXCLUDE=SEQUENCE,TABLE:"IN ('EMP','DEPT')"

       impdp <other_parameters> SCHEMAS=scott INCLUDE=PACKAGE,FUNCTION,PROCEDURE,TABLE:"='EMP'"

 

二、常用的過濾SQL表達式

    EXCLUDE=SEQUENCE,VIEW                          --過濾所有的SEQUENCE,VIEW
  
    EXCLUDE=TABLE:"IN ('EMP','DEPT')"               --過濾表對象EMP,DEPT
  
    EXCLUDE=SEQUENCE,VIEW,TABLE:"IN ('EMP','DEPT')" --過濾所有的SEQUENCE,VIEW以及表對象EMP,DEPT
  
    EXCLUDE=INDEX:"= 'INDX_NAME'"                   --過濾指定的索引對象INDX_NAME
  
    INCLUDE=PROCEDURE:"LIKE 'PROC_U%'"              --包含以PROC_U開頭的所有存儲過程(_ 符號代表任意單個字符)
  
    INCLUDE=TABLE:"> 'E' "                          --包含大於字符E的所有表對象

                                          

  
三、命令行下轉義符的處理

Windows平台:

    D:\> expdp system/manager DIRECTORY=my_dir DUMPFILE=exp_tab.dmp LOGFILE=exp_tab.log SCHEMAS=scott
     INCLUDE=TABLE:\"IN ('EMP', 'DEPT')\"
  
    在Windows平台下,需要對象雙引號進行轉義,使用轉義符\

Unix平台:
    在未使用parfile文件的情形下,所有的符號都需要進行轉義,包括括號,雙引號,單引號等
    % expdp system/manager DIRECTORY=my_dir DUMPFILE=exp_tab.dmp LOGFILE=exp_tab.log SCHEMAS=scott
     INCLUDE=TABLE:\"IN \'EMP\',\'DEP\'\'EMP\',\'DEP\'\"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM