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

DB2 資料移動 (一):匯出、匯入、載入 三大指令與四種檔案格式完整解析

     編輯:DB2 綜合知識

前言

DB2 資料移動包含 EXPORT (匯出)、IMPORT (匯入)、LOAD (裝入/載入) 三大指令,支援四種檔案格式。本文詳細說明各格式結構、EXPORT 指令語法與實例、DEL 格式修飾符、ASC 格式轉換技巧。

一、四種檔案格式

格式全名結構特點適用場景
ASCNon-delimited ASCII固定寬度欄位,無分隔符,以起始/結束位置定義欄位大型機下載、固定格式交換
DELDelimited ASCII列分隔符 (預設換行) + 欄位分隔符 (預設逗號) + 字元限定符 (預設雙引號)跨平台/異構遷移、人工閱讀
WSFWorksheet FormatLotus 1-2-3 / Symphony 專用格式與 Lotus 系列互操作
IXFIntegrated Exchange Format (PC/IXF)二進位,含標頭、表定義、欄位描述符、資料記錄,支援完整中繼資料同構 DB2 遷移、備份、重建表 (FORCECREATE) — 最推薦

二、EXPORT 指令語法


EXPORT TO  OF  [MODIFIED BY ] 

三、實例

3.1 基本匯出 (DEL 格式)


EXPORT TO c:\org.txt OF DEL SELECT * FROM org;

產生逗號分隔、雙引號包裹字串的文字檔。

3.2 修改 DEL 格式修飾符


EXPORT TO c:\staff.txt OF DEL
    MODIFIED BY COLDEL$ CHARDEL'' DECPLUSBLANK
    SELECT * FROM staff;
  • COLDEL$:欄位分隔符改為 $。
  • CHARDEL'':字元限定符改為單引號 (雙單引號表示一個單引號)。
  • DECPLUSBLANK:數值型欄位正號改為空白 (預設輸出 +123 → 123)。

3.3 ASC 格式匯出 (EXPORT 不直接支援,需自行轉換)

思路:將各欄位 CAST 為固定長度 CHAR,再 CONCAT 成單一欄位輸出:


CREATE TABLE n (a INT, b DATE, c TIME, d VARCHAR(5), e CHAR(4), f DOUBLE);
INSERT INTO n VALUES (15, '2004-10-21', '23:12:23', 'abc', 'hh', 35.2);
INSERT INTO n VALUES (5, '2004-01-21', '03:12:23', 'bc', 'hhh', 35.672);

-- 匯出固定寬度文字
EXPORT TO c:\test.txt OF DEL
    SELECT
        RIGHT('00000000' || CHAR(a), 8) ||      -- 8 位數字右對齊
        CHAR(b, ISO) ||                          -- DATE → YYYY-MM-DD (10 字元)
        REPLACE(CHAR(c, ISO), ':', '') ||        -- TIME → HHMMSS (6 字元)
        RPAD(d, 5) ||                            -- VARCHAR(5) 右補空白
        RPAD(e, 4) ||                            -- CHAR(4)
        RIGHT('0000000000000000' || CHAR(CAST(f AS DECIMAL(16,4))), 16)  -- 固定 16 字元數值
    FROM n;

四、DEL 格式範例內容


10,"Head Office",160,"Corporate","New York"
15,"New England",50,"Eastern","Boston"
20,"Mid Atlantic",10,"Eastern","Washington"
...

五、ASC 格式範例內容


10 Head Office       160 Corporate      New York
15 New England       50 Eastern         Boston
20 Mid Atlantic      10 Eastern         Washington
...

結語

掌握四種格式特性與 EXPORT 修飾符,能滿足多數資料交換需求。同構 DB2 環境首選 IXF (含結構、索引、約束);異構/跨平台首選 DEL (可調整分隔符);固定寬度需求靠 SQL 組裝輸出 ASC。下篇將介紹 IMPORT/LOAD 參數與效能調優。

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