資料表包含 LOB(大型物件:BLOB/CLOB/DBCLOB)欄位時,預設 EXPORT 僅匯出前 32 KB。本文說明 LOBSINFILE 與 LOBSINSEPFILES 兩種完整匯出模式、LOB 檔案命名規則與 Lob Location Specifier (LLS) 結構。
EXPORT TO file_name OF filetype
LOBS TO lob_dir1, lob_dir2, ...
LOBFILE lob_filename
MODIFIED BY LOBSINFILE
MESSAGES message_file
select_statement;
LOBS TO:指定 LOB 檔案儲存目錄(可多個,循環使用),省略則用目前工作目錄。LOBFILE:基底檔名,實際檔名附加序號 .001、.002...(如 resume.001.lob)。MODIFIED BY LOBSINFILE:明確指定合併模式,避免與 LOBSINSEPFILES 混淆。匯出資料檔中,LOB 欄位不存實際資料,改存 LLS 字串指向外部 LOB 檔案:
filename.ext.lob.nnn.mmm/
filename.ext.lob:LOB 檔案名(含序號)nnn:LOB 資料在檔案中的位元組偏移量mmm:LOB 資料長度(位元組)resume.001.lob.1257.2415/ 表示:LOB 資料位於 resume.001.lob,從位元組 1257 開始,長度 2,415 位元組。
EXPORT TO empresume.del OF DEL
LOBS TO d:\lob1\
LOBFILE resume
MODIFIED BY LOBSINFILE
MESSAGES msg.out
SELECT * FROM emp_resume;
EXPORT TO empresume.del OF DEL
LOBS TO d:\lob1\
LOBFILE resume
MODIFIED BY LOBSINSEPFILES
MESSAGES msg.out
SELECT * FROM emp_resume;
產生 resume.001.lob、resume.002.lob... 每檔一個 LOB,適合單一 LOB 較大或需獨立管理場景。
| 場景 | 建議模式 |
|---|---|
| LOB 數量多、單一較小、匯入端支援 LLS 解析 | LOBSINFILE(單檔管理簡單) |
| LOB 單一超大(>100MB)、需並行處理、備份粒度細 | LOBSINSEPFILES |
| 跨平台匯入(非 DB2) | LOBSINSEPFILES(通用性佳) |