Hitachi

ノンストップデータベース HiRDB Version 10 構造型データベース機能


12.4.3 メインフレームで使用していたデータをデータロードする場合の注意事項

メインフレームで使用していた符号付きパック形式のデータをデータロードする場合の注意事項を説明します。

〈この項の構成〉

(1) 符号部に関する注意事項(符号部の変換規則)

符号付きパック形式(HiRDB/SDのPACKED DECIMAL FIXED型)の符号部の仕様がメインフレームとHiRDB/SDで異なります。仕様差を次の表に示します。

表12‒8 メインフレームとHiRDB/SDの符号付きパック形式の符号部の仕様差

符号部

メインフレームの仕様

HiRDB/SDの仕様

データロード時に変換される値

X'A'

正の値を意味します。

X'C'

X'B'

負の値を意味します。

X'D'

X'C'

正の値を意味します。

正の値を意味します。

変換されません。

X'D'

負の値を意味します。

負の値を意味します。

変換されません。

X'E'

正の値を意味します。

X'C'

X'F'

正の値を意味します。

正の値を意味します。

X'C'

(凡例)

−:不正な値と見なし,エラーとします。

上記の表に示すように符号部の仕様に差があるため,データロード時に符号部が変換されます。ただし,符号部が変換されるのは,システム共通定義のpd_dec_sign_normalizeオペランドにYを指定した場合に限ります。そのため,データロードを実行する前に,pd_dec_sign_normalizeオペランドにYが指定されているか確認してください。

注意事項

pd_dec_sign_normalizeオペランドにYを指定しないでデータロードした場合,符号部が変換されない状態でデータベースに格納されます。この状態でデータを検索,更新した場合,検索結果が正しく返らなかったり,データベースが破壊されたりすることがあります。

(2) 精度に関する注意事項

精度(全体の桁数)が偶数の場合,PACKED DECIMAL FIXED型のデータの先頭4ビットがB'0000'である必要があります。メインフレームでDECIMAL型のデータの先頭4ビットがB'0000'でないデータを使用していた場合は,先頭4ビットを0クリアしてからデータロードしてください。

なお,精度が奇数の場合は,先頭4ビットの0クリアは必要ありません。