首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle Spool 技術匯出資料到文字檔完整教學:含 CSV 格式範例

     編輯:Oracle 資料庫基礎

基本 Spool 操作流程

  1. 啟動緩衝並指定輸出檔:
    SPOOL d:\output.txt
    
  2. 執行任意 SQL 查詢:
    SELECT mobile FROM customer;
    SELECT mobile FROM client;
    -- ... 更多查詢
    
  3. 關閉緩衝並寫入檔案:
    SPOOL OFF;
    

    所有查詢結果將寫入 output.txt。

進階:產生結構化 CSV (Tab 分隔) 範例

建立 syoyou_xamshain.sql 腳本檔,內容如下:

SET NEWPAGE 0
SET LINESIZE 10000
SET PAGESIZE 0
SET HEADING OFF
SET TRIMSPOOL ON
SET COLSEP ','          -- 欄位分隔符號設為逗號
SET ECHO OFF
SET FEEDBACK OFF

SPOOL syoyou_xamshain.csv

SELECT
    SHIMEI_CD, VALID_TERM_START_YMD, SHAIN_NMJ_SEI, SHAIN_NMJ_NA,
    SHAIN_NMHK_SEI, SHAIN_NMHK_NA, SHAIN_NMHE_SEI, SHAIN_NMHE_MIDDLE,
    SHAIN_NMHE_NA, SEI_BETSU_KBN,
    NOK00J0001.NOZJ1301(BIRTH_DAY),
    SAIYOU_YMD, KEI_BETSU_CD, RETIRE_YMD, BANK_CD, BANK_NMJ, BANK_NMK,
    BANK_SHITEN_CD, BANK_SHITEN_NMJ, BANK_SHITEN_NMK, YOKIN_TYPE,
    KOUZA_MEIGI_KANA, NOK00J0001.NOZJ1301(KOUZA_NO), SSO_TAISHO_FLG,
    VALID_TERM_END_YMD, NEXT_SYSTEM_TAISHO_FLG, IDOU_FLG, YUUKOU_FLG,
    CREATE_USER_CD, CREATE_TIME_STAMP, UPDATE_USER_CD, UPDATE_TIME_STAMP
FROM XAMSHAIN;

SPOOL OFF

關鍵 SET 參數說明

參數作用
NEWPAGE 0不插入分頁換頁字元
LINESIZE 10000單行最大寬度,防止換行截斷
PAGESIZE 0關閉分頁,不產生標題重複
HEADING OFF不顯示欄位標題
TRIMSPOOL ON移除行尾空白
COLSEP ','設定欄位分隔符 (CSV 用逗號)
ECHO OFF / FEEDBACK OFF關閉指令回顯與回饋訊息

執行方式

SQL> @syoyou_xamshain.sql

即可在當前目錄產生乾淨的 syoyou_xamshain.csv。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved