1. 程式人生 > >Oracle資料庫存量資料抽取使用spool控制命令

Oracle資料庫存量資料抽取使用spool控制命令

    spool是oracle  sqlplus提供的一個控制命令。可以利用spool和select語句的組合動態生成一些失去了指令碼或者一些資料。

    1.spool作用: 在sqlplus中用來儲存或列印查詢結果。

    set echo on            --是否顯示執行的命令內容  
    set feedback off       --是否顯示 *   rows   selected  
    set heading off        --是否顯示欄位的名稱
    set verify off         --是否顯示替代變數被替代前後的語句。fil
    set trimspool off      --去欄位空格
    set pagesize 1000      --頁面大小
    set linesize 50//linesize設定儘量根據需要來設定,大了生成的檔案也大
    define fil= 'e:\exp.txt'
    prompt *** Spooling to &fil
    spool &fil
    select id||','||username||','||'"'||password||'"' from myuser;
    spool off;

    可以在Oracle客戶端進行輸入執行,也可以在PL/SQL進行輸入執行。

            可以將spool命令寫成slq指令碼,執行指令碼,將spool的set單獨放一個sql指令碼,將select語句放一個sql指令碼。

    如果要設定分隔符,在select語句中用 ||'分隔符'||設定。

    如果寫成sql指令碼,可以用 @sql指令碼地址 來執行指令碼,在Oracle客戶端或者PL\SLQ中。