数値データベース列の長さがエクスポートによって変更される
問題またはエラー:
長さ
N
の数値データベース列は、データ・ディクショナリー・ファイル (
.dct
ファイル) では長さ
N
+7
に変更されます。
解決方法:
データをエクスポートしてエクスポート・ファイルのデータ・ディクショナリーをプログラムで作成すると、
Campaign
は、数値データを表記するために必要となる可能性がある、浮動小数を扱う数値用のスペースを追加します。
例えば、次の浮動小数のために、データ・ディクショナリーが長さ 10 の数値フィールドに 7 を追加することがあります。
1 - 負
1 - 10 進
1 - e
1 - プラスまたはマイナス
3 - 指数
エクスポートされる数値 (絶対値または精度、あるいはその両方) が、定義された幅で表現できる最大の数値を超えないことが分かっている場合には、次のいずれかの方法を使用して、エクスポートされる数値フィールドの長さを制御することができます。
ハードコーディングした数値フィールド長を使用して事前定義された、データ・ディクショナリー・ファイルを作成します。
値が定義済みの幅を超えると、エラー 11335 (
「フィールド幅が小さすぎてソース・テキスト・データを保持できません (Field width too small to hold source text data)」
) が発生します。
数値フィールドの場合は、数値列を長さ 10 の文字列に変換するユーザー定義フィールドを作成してから、その値を出力します。 以下に例を示します。
FORMAT(NUM_COL, 10)
値の幅が
FORMAT
で指定された幅
N
を超えた場合、左側の
N
桁が保持されます。残りの桁は切り捨てられて廃棄され、エラーは発生しません。
Copyright IBM Corporation 2015. All Rights Reserved.