您可以使用所提供的匯出程式 (如 DB2 資料匯出),來擷取 DB2 資料庫中的資料,並將它寫入純文字檔。您可以使用所提供的載入程式 (如 DB2 載入取代),來擷取檔案中的資料,並將它寫入其它 DB2 資料庫。
建議:當載入的資料量很大時,您可以使用這些程式,而不使用資料倉儲中心的 SQL 處理程序。您可以試驗看看,查看何種方式對您更有效。
這些大量載入及匯出程式可在有定界符號的資料檔及 DB2 資料庫上操作。資料庫伺服器不必常駐於代理程式端,但來源檔或目標檔則必須常駐於代理程式端。輸入欄位與輸出欄位的數目和次序必須相符。
這些程式會將日誌檔寫入 VWS_LOGGING 環境變數所指定的目錄中。在 Windows NT 和 OS/2 上,VWS_LOGGING 的預設值是 x:\vwswin\logging\;在 UNIX 上,則是 /var/IWH,其中 x 是您安裝倉儲代理程式的磁碟機。
VWS_LOGGING 環境變數的值是「架構」筆記本追蹤日誌目錄欄位的預設值。如果您變更追蹤日誌目錄欄位的值,則資料倉儲中心會將日誌檔寫入您指定的新目錄中,但 VWS_LOGGING 的值不會變更。
如需取得這些程式的參數、限制及回覆碼的完整清單,請參閱線上說明中的"步驟與作業"。
下幾節說明如何定義 DB2 Universal Database 倉儲程式的不同步驟次類型。
在「DB2 UDB 匯出」和「DB2 UDB 載入」倉儲程式的各節中說明了如何定義這些程式的基本值。定義「DB2 Universal Database 插入」和「DB2 Universal Database 載入」倉儲程式進階特性的相關資訊,則說明在線上說明中。
您可以使用所提供的倉儲程式,將資料從 DB2 UDB 資料庫或定義於 ODBC 的資料庫中匯出。
使用 DB2 UDB 匯出「步驟內容」筆記本,可以建立用來將資料從 DB2 Universal Database 表格或概略表匯至代理程式端檔案的步驟。
資料庫伺服器無需位於代理程式端。但是,目標檔必須位於代理程式端。
指定目標檔用於代理程式端時的名稱。如果目標檔不存在,則 DB2 UDB 匯出會建立目標檔,如果存在,則會取代它。
基本要求:來源表格或概略表必須與「程序模型」視窗中的步驟相鏈結。該步驟也必須與倉儲目標相鏈結。
DB2 UDB 匯出步驟不使用「直欄對映」頁。
若要定義執行「DB2 Universal Database 匯出」倉儲程式之步驟的值,請:
使用「以 ODBC 將資料匯至檔案 (VWPEXPT2)」倉儲程式,可以在包含於 ODBC 中所登記之資料庫的表格上選取資料,並將資料寫入有定界符號的檔案。若要在 AIX 或 UNIX 上執行此程式,請使用倉儲代理程式的 ODBC 版本。
此步驟次類型會將倉儲來源檔或目標檔當作來源使用。您可以將來源連接到「程序模型」視窗中的步驟。其輸出檔會產生於代理程式端。
此倉儲程式適用於下列作業系統:
「直欄對映」頁不適用於此步驟。
若要定義執行此倉儲程式之步驟的值,請:
選用項目:如果您要消除 SELECT 陳述式欄位中的文字,請按一下清除。若要建立新的 SQL,則必須重新按一下編輯。
您可以使用提供的倉儲程式,將資料載入 DB2 Universal Database、DB2 for AS/400,及 DB2 for OS/390 資料庫。
使用「DB2 Universal Database 載入步驟內容」筆記本,可以建立將資料從來源或目標檔載入 DB2 Universal Database 表格的步驟。
您可以將倉儲來源或目標當作此步驟次類型的來源使用。將該來源鏈結到「程序模型」視窗中的步驟次類型。然後,將步驟次類型鏈結到倉儲目標。
「直欄對映」頁不適用於此步驟。
若要定義執行「DB2 Universal Database 載入」倉儲程式之步驟的值,請:
使用「DB2 UDB for AS/400 資料載入插入 (VWPLOADI)」程式,可以將資料從純文字檔載入 DB2 UDB for AS/400 表格中。載入作業會將新資料添加到表格中現存資料的結尾。
定義此步驟次類型之前,您必須將步驟連接到「程序模型產生器」中的倉儲來源及倉儲目標。
AS/400 施行 VWPLOADI 時可接受的來源檔是「整合檔案系統 (IFS)」(根檔案系統) 中的 AS/400 QSYS 來源檔成員或串流檔。
要訣:藉由使用 QSYS 檔成員,而不使用串流檔,您不僅可以增進效能,還可以改進儲存體效用。CPYFRMIMPF 會將整個串流檔複製到 QRESTORE,然後將副本載入您的表格中。請參閱 CPYFRMIMPF 的線上說明,以取得詳細資訊。
目標表格僅可以常駐於 QSYS 檔案系統。
您只能變更處於開發模式的步驟。
將新資料載入表格之前,程式會先將表格匯至備份檔,供您回復用。
「直欄對映」頁不適用於此步驟。
若要使用此程式,您必須引用下列 PTF 到 AS/400 代理程式端:
指令 PTF: |
5769SS100 VRM420 SF46911 |
程式碼 PTF: |
5769SS100 VRM420 SF46976 |
維護 PTF: |
5769SS100 VRM420 SF49466 |
這些 PTF 會提供執行 VWPLOADI 程式所需的 AS/400 CPYFRMIMPF 及 CPYTOIMPF 指令 (LOAD及 EXPORT)。這些 PTF 也會安裝這些指令的線上說明。
可以執行此程式和倉儲代理程式的使用者設定檔,必須至少具有要載入表格的讀取/寫入權限。
下列是對於 VWPLOADI 的基本要求。CPYFRMIMPF 指令限制的相關資訊,請參閱 CPYFRMIMPF 指令線上說明的限制一節。若要檢視此指令的線上說明,請在 AS/400 指令提示下,鍵入 CPYFRMIMPF,再按 F1 鍵。
若要置換此行為,請在 Filemod 字串參數中併入 ERRLVL(n) 關鍵字,其中 n = 容許的可回復錯誤數。
您可以在 CPYFRMIMPF 指令的線上說明中找到 ERRLVL 關鍵字的詳細資訊。
若要定義執行此程式之步驟的值,請:
指定您載入程式的定界符號:
此欄位用於修改 CPYFRMIMPF 指令要輸入檔所具有的檔案性質。如果省略此參數,則系統會假設 CPYFRMIMPF 指令所要的全部預設值都是正確的。
輸入檔的部份預設性質是:
CPYFRMIMPF 指令之預設值的相關資訊,請參閱 CPYFRMIMPF 指令的 AS/400 線上說明。
Filemod 字串的格式是:
基本要求:某些參數需要您將值含括在兩個單引號中。例如,FLDDLM 指令必須將值含括在兩個單引號中。資料倉儲中心會產生 VWPLOADI 的 AS/400 CALL 陳述式,形式如下:
CALL PGM(QIWH/VWPLOADI) PARM('fromfile' 'totable' 'filemodstring')
將兩個單引號放在一起會告訴 AS/400 指令提示處理器,您的參數值包含單引號。這會防止指令行處理器將單引號與正常的參數結尾記號弄錯。
VWPLOADI 程式提供兩種診斷資訊:
重要事項:此程式的順利完成並不保證資料已正確轉送。若要更精確地處理錯誤,請使用 ERRLVL 參數。
VWPLOADI 追蹤檔位於 /QIBM/UserData/IWH 目錄的「整合檔案系統」中。
VWPLOADI 追蹤檔有下列名稱格式:
VWxxxxxxxx.VWPLOADI
其中 xxxxxxxx 是產生檔案之 VWPLOADI 執行的程序 ID。
若要檢視工作站的追蹤檔,請:
若要使用 Client Access/400,將 AS/400 系統對映到 NT 工作站上的邏輯磁碟機,請:
\\hostname\。
其中 hostname 是 AS/400 系統的完整 TCP/IP 主電腦名稱。
基本要求:如果您使用 Client Access/400 來存取追蹤檔,則必須為 Client Access/400 定義副檔名 .VWPLOADI。定義此副檔名會容許 Client Access/400 將帶有此副檔名的檔案內容從 EBCDIC 轉換到 ASCII。
若要為 Client Access/400 定義副檔名,請:
如此即會開啟「從屬站存取」筆記本。
您現在即可將資料載入任何 ASCII 文字編輯程式或文字處理器。
如果 VWPLOADI 發出的任何一個系統指令中有失敗,則會有異常碼記錄在 VWPLOADI 追蹤檔中。若要取得異常狀況的說明,請:
即會顯示「顯示格式的訊息文字」畫面。
Message ID . . . . . . . . . : CPF2817 Message file . . . . . . . . : QCPFMSG Library . . . . . . . . . : QSYS Message . . . . : 發生錯誤,複製指令結束。 Cause . . . . . : 複製檔案時發生錯誤。 Recovery . . . : 請參閱先前列示的訊息。 更正錯誤,然後重新嘗試該請求。
VWPLOADR 追蹤檔的第二行會包含您要發出 WRKJOB 指令所需的資訊。
若要檢視排存檔,您可以在 WRKJOB 指令之後,剪下訊息檔名,並將之貼到 AS/400 指令提示上,然後按 Enter 鍵。檢視該工作的排存檔,以取得所發現之錯誤的附加資訊。
使用「DB2 UDB for AS/400 資料載入取代 (VWPLOADR)」程式,可以將資料從純文字檔載入 DB2 UDB for AS/400 表格中。載入作業會完全取代表格中的現存資料。
定義此步驟次類型之前,您必須將步驟連接到「程序模型產生器」中的倉儲來源及倉儲目標。
AS/400 施行 VWPLOADR 時可接受的來源檔是「整合檔案系統 (IFS)」(根檔案系統) 中的 AS/400 QSYS 來源檔成員或串流檔。
要訣:藉由使用 QSYS 檔成員,而不使用串流檔,您不僅可以增進效能,還可以改進儲存體效用。CPYFRMIMPF 會將整個串流檔複製到 QRESTORE,然後將副本載入您的表格。請參閱 CPYFRMIMPF 的線上說明,以取得詳細資訊。
目標表格僅可以常駐於 QSYS 檔案系統。
您只能變更處於開發模式的步驟。
「直欄對映」頁不適用於此步驟。
若要使用此程式,您必須引用下列 PTF 到 AS/400 代理程式端:
指令 PTF: |
5769SS100 VRM420 SF46911 |
程式碼 PTF: |
5769SS100 VRM420 SF46976 |
維護 PTF: |
5769SS100 VRM420 SF49466 |
這些 PTF 會提供 AS/400 CPYFRMIMPF 及 CPYTOIMPF 指令 (LOAD 及 EXPORT)。這些指令可使 VWPLOADR 程式運作。這些 PTF 也會安裝這些指令的線上說明。
可以執行此程式和倉儲代理程式的使用者設定檔,必須至少具有要載入表格的讀取/寫入權限。
下列是對於 VWPLOADR 的基本要求。CPYFRMIMPF 指令限制的相關資訊,請參閱 CPYFRMIMPF 指令線上說明的限制一節。若要檢視此指令的線上說明,請在 AS/400 指令提示下,鍵入 CPYFRMIMPF,再按 F1 鍵。
正常情況下,此程式在每次執行時都會取代目標表格中的全部資料,並自動刪除執行失敗的記錄。但是,如果載入作業失敗,則程式會避免使用目標表格中的資料。如果目標表格中有資料,它不會完成。
若要置換此行為,請在 Filemod 字串中併入 ERRLVL(n) 關鍵字,其中 n = 容許的可回復錯誤數。
您可以在 CPYFRMIMPF 指令的線上說明中找到 ERRLVL 關鍵字的詳細資訊。
若要定義執行此程式之步驟的值,請:
此欄位用於修改 CPYFRMIMPF 指令要輸入檔所具有的檔案性質。如果省略此參數,則系統會假設 CPYFRMIMPF 指令所要的全部預設值都是正確的。
輸入檔的部份預設性質是:
CPYFRMIMPF 指令之預設值的相關資訊,請參閱 CPYFRMIMPF 指令的 AS/400 線上說明。
Filemod 字串的格式是:
注意:某些參數需要您將值含括在兩個單引號中。例如,FLDDLM 指令必須將值含括在兩個單引號中。資料倉儲中心會產生 VWPLOADI 的 AS/400 CALL 陳述式,形式如下:
CALL PGM(QIWH/VWPLOADI) PARM('fromfile' 'totable' 'filemodstring')
將兩個單引號放在一起會告訴 AS/400 指令提示處理器,您的參數值包含單引號。這會防止指令行處理器將單引號字元與正常參數結尾記號弄錯。
VWPLOADR 程式提供兩種診斷資訊:
重要事項:此程式的順利完成並不保證資料已正確轉送。若要更精確地處理錯誤,請使用 ERRLVL 參數。
VWPLOADR 追蹤檔位於 /QIBM/UserData/IWH 目錄的「整合檔案系統」中。
VWPLOADR 追蹤檔有下列名稱格式:
VWxxxxxxxx.VWPLOADR
其中 xxxxxxxx 是產生檔案之 VWPLOADR 執行的程序 ID。
若要檢視工作站的追蹤檔,請:
使用 Client Access/400 的有關資訊,請參閱"透過 Client Access/400 來檢視 VWPLOADR 追蹤"。
若要使用 Client Access/400,將 AS/400 系統對映到 NT 工作站上的邏輯磁碟機,請:
\\hostname\。
其中,hostname 是 AS/400 系統的完整 TCP/IP 主電腦名稱。
基本要求:如果您使用 Client Access/400 來存取追蹤檔,則必須為 Client Access/400 定義副檔名 .VWPLOADR。定義此副檔名會容許 Client Access/400 將帶有此副檔名的檔案內容從 EBCDIC 轉換到 ASCII。
若要為 Client Access/400 定義副檔名,請:
如此即會開啟「從屬站存取」筆記本。
您現在即可將資料載入任何 ASCII 文字編輯程式或文字處理器。
如果 VWPLOADR 發出的任何一個系統指令中有失敗,則會有異常碼記錄在 VWPLOADR 追蹤檔中。若要取得異常狀況的說明,請:
即會顯示「顯示格式的訊息文字」畫面。
Message ID . . . . . . . . . : CPF2817 Message file . . . . . . . . : QCPFMSG Library . . . . . . . . . : QSYS Message . . . . : 發生錯誤,複製指令結束。 Cause . . . . . : 複製檔案時發生錯誤。 Recovery . . . : 請參閱先前列示的訊息。 更正錯誤,然後重新嘗試該請求。
VWPLOADR 追蹤檔的第二行會包含您要發出 WRKJOB 指令所需的資訊。
若要檢視排存檔,您可以在 WRKJOB 指令之後,複製訊息檔名,並將之貼到 AS/400 指令提示上,然後按 Enter 鍵。檢視該工作的排存檔,以取得所發生之錯誤的附加資訊。
使用「DB2 for OS/390 載入」倉儲程式,可以將記錄載入表格空間中的一或多個表格。
若要定義使用此倉儲程式之步驟的值,請:
如果表格空間為非空,並且您不取代內容 (未選取載入前將表格內容或索引重設為空勾選框),則會發出 DB2 UDB for OS/390 訊息,並且公用程式工作步驟會以工作步驟狀況碼 8 終止。對於非區段表格空間,標為刪除列或除去表格列所佔據的空間,不會被使用。
DB2 卸載格式會指定輸入記錄格式與 DB2 卸載格式相容。DB2 卸載格式是帶有 UNLOAD ONLY 選項之 REORG 的結果。由 REORG 公用程式卸載的輸入記錄會從它們被卸載的位置載入表格中。請勿在 REORG UNLOAD ONLY 和 LOAD FORMAT UNLOAD 之間新增或變更直欄規格。DB2 會將記錄從它們被卸載的位置重新載入同一個表格中。
SQL/DS 卸載格式會指定輸入記錄格式與 SQL/DS 卸載格式相容。要載入表格中直欄的資料類型必須與 SQL/DS 表格中對應直欄的資料類型相同。長度大於 DB2 限制的 SQL/DS 字串無法被載入。