Hitachi

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


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の動作

例外データを検出したときの抽出側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