HiRDB データ連動拡張機能 HiRDB Datareplicator Extension Version 8

[目次][索引][前へ][次へ]

3.1.4 データ型の変換

抽出側DBから抽出された更新データのデータ型は,抽出側Datareplicator Extensionによって反映側DBに反映できるデータ型に変換され,抽出情報キューファイルに格納されます。

データ型の対応については,「4.1.2 データ型の対応の設計」を参照してください。

なお,抽出側DBが他社DBMSの場合,変換ができるデータ型であっても抽出情報キューファイルに格納できないデータがあります。これらのデータを例外データといいます。

例外データを検出した場合は,これらを抽出情報キューファイルに格納できるデータに置換することで,抽出処理を続行できます。

Oracleの場合の例外データを次に示します。

データ型 抽出情報キューファイルに格納できないデータ 理由
NUMBER型 表4-3 SQL Serverから抽出するデータのデータ型対応」の注※1に従ってデータ型を変換した列に対する,各数値型の表現範囲外のデータ。 抽出情報キューファイルに格納するためには,各数値型に相当する形式に変換する必要がありますが,表現範囲外であるため変換できません。
DATE型 紀元前の日付データ。 抽出情報キューファイルに格納するためには,日付データは4バイトのパック形式に変換する必要がありますが,紀元前の日付データは変換できません。

次にSQL Serverの場合の例外データを次に示します。

データ型 抽出情報キューファイルに格納できないデータ 理由
CHAR(n)型 時間又は日付用の情報を格納しているCHAR型データ(n≠8,10)。 時間及び日付のデータ形式が,'HH:MM:SS'及び'YYYY-MM-DD'のため,n=8,10以外では変換できません。
<この項の構成>
(1) 例外データを検出したときの抽出側Datareplicator Extensionの動作
(2) 例外データを置換する場合の置換値

(1) 例外データを検出したときの抽出側Datareplicator Extensionの動作

例外データを検出したときの抽出側Datareplicator Extensionの動作は,次に示すどちらかを選択できます。

例外データを検出したときの抽出側Datareplicator Extensionの動作 出力メッセージ
抽出処理を停止します。 KFRB05028-E
例外データを置換して,抽出処理を続行します。 KFRB05029-W

例外データを検出したときの抽出側Datareplicator Extensionの動作は,抽出環境定義のexterrlevelオペランドで指定します。

また,例外データを置換して抽出処理を続行する場合,どの値に置換するかは,抽出環境定義のcvt_datakindオペランドで指定します。

各オペランドの詳細については,「5.1.2 抽出環境定義」を参照してください。

(2) 例外データを置換する場合の置換値

Oracleの場合の例外データを置換する場合の置換値を次に示します。

データ型 置換値
ナル値 最大値 最小値
NUMBER型 ナル値 各数値型の表現範囲の最大値 0
DATE型 ナル値 9999/12/31 23:59:59 0001/01/01 00:00:00

SQL Serverの場合の例外データを置換する場合の置換値を次に示します。

データ型 置換値
ナル値 最大値 最小値
CHAR(n)型 ナル値 9999/12/31 0001/01/01
23:59:59 00:00:00