來源字元集

有效對象

Replicat

說明

使用 SOURCECHARSET 參數控制 Replicat 將資料從來源字元集轉換成目標字元集。Replicat 預設會轉換 11.2.1 和更新版本的字元集,但您可能需要介入下列情況:

Replicat 在使用 SOURCECHARSET 字元集時發出警告訊息。

如果來源資料中有無效的字元或目標字元集不支援來源字元,請使用 REPLACEBADCHAR 參數來處理驗證錯誤。它提供放棄這些錯誤的選項、略過導致錯誤的記錄,或指定字元的替代值。

預設

無

語法

SOURCECHARSET {<source_charset> | PASSTHRU | OVERRIDE} [DB2ZOS]

<source_charset>

指定擷取版本所寫入之資料 (早於 11.2.1) 的來源字元集。Replicat 會在將字元類型資料欄轉換成目標字元集時使用指定的字元集。

對於 <source_charset>,請指定代表來源資料庫的適當字元集識別碼。

對於 Oracle,如果未指定 SOURCECHARSET,但目標上有一個 NLS_LANG 環境變數,Replicat 會使用 NLS_LANG 值作為來源資料庫字元集。如果 SOURCECHARSET 和 NLS_LANG 都不存在,Replicat 會中止以防止可能的資料損毀。

PASSTHRU

PASSTHRU

強制 Replicat 在不轉換字元集的情況下套用資料。字元集差異會忽略如下:

如果已指定 PASSTHRU,且 CHAR/VARCHAR/CLOB 與 NCHAR/NVARCHAR/NCLOB 之間的對應存在於 MAP 陳述式中,則 Replicat 會中止。

指定 PASSTHRU 模式時,如果有任何 Oracle GoldenGate 資料欄對應函數用於以字元為基礎的資料欄,Replicat 會發出警告訊息,並將這些函數的結果轉換成目標資料庫字元集,再將它們對應至目標資料欄。

只有在確定來源和目標字元集相容時,才應該使用 PASSTHRU。如果您不確定 PASSTHRU 是否適合您的環境,請先洽詢 Oracle Support,再加以使用。

OVERRIDE

強制 Replicat 使用指定的字元集,藉此覆寫歷程檔中的來源資料庫字元集。此選項會覆寫字元類型資料欄字元集,但下列情況除外:

z/OS 的 DB2

適用於 z/OS 的 Db2。

如果 z/OS 平台中包含 Db2 資料的歷程檔版本是 Oracle GoldenGate 12.1 或更舊版本,則為必要項目。此參數可確保 Replicat 可辨識 z/OS 的資料為 Db2,此參數允許使用 ASCII 與 EBCDIC 字元格式的組合。

範例

範例 1

SOURCECHARSET ISO-8859-9

範例 2

SOURCECHARSET PASSTHRU

範例 3

SOURCECAHRSET JA16EUC

範例 4

SOURCECHARSET OVERRIDE WE8ISO8859P15