データベース

5. 数字フィールドと文字フィールドの正しい使い分け

日付フィールドやタイムスタンプ・フィールドは別として AS/400 の DDS では
大きく 2分すれば 文字フィールドと数字フィールドの 2つに分類される。
フィールドの属性を 文字か数字に決定するときにはよくあるケースとして、
数字しか入らない区分であるからといって数字フィールドとして定義するのはよくない。
例えば [売上区分] には 1=売上, 2=返品 しか入らないので数字フィールドとして
定義するという具合である。
文字が誤って入力されるのを 防ぎたい意図があるのであれば DDS の妥当性検査で
1および 2以外の入力を防止することもできる。
もし、このように売上区分を数字として定義すれば

このように弊害あって 利なしに近い。
数字フィールドは文字フィールドほど柔軟ではないのだ。
それでは、数字フィールドとして定義すべきものはどのようなものだろうか?
答えは非常に明確である。

と 覚えておけば良い。
これ以外に数字フィールドとして定義すべきものは探してもみつからない。