前述の受注基本モデルの場合、得意先と仕入先と納入先にはそれぞれ「名称」「ふりがな名」「略称名」「郵便番号」「電話番号」「FAX番号」が定義されています。
これらは、共通属性であるため、スーパータイプとして“取引先”を追加し、“得意先”“納入先”は、それぞれ“取引先”のサブタイプとして定義します。
また、こうすることによってデータの二重入力(管理)を避けることが可能となります。例えば、ある取引先は得意先でもあり、また、納入先でもあるといった場合、前述の基本モデルのように、“得意先”と“納入先”を別々のエンティティとして定義すると、ある取引先の情報を、得意先テーブルに登録すると同時に、納品先テーブルにも登録する必要がある。
当然、住所や電話番号が変更になった場合には、得意先テーブルの住所や電話番号を変更するのみではなく、納品先テーブルの住所や電話番号も変更する必要があります。
下記のように“取引先”をスーパータイプとして定義することにより、得意先でもあり納入先でもある取引先の情報を重複することなく管理することができるようになります。
※コメント投稿者のブログIDはブログ作成者のみに通知されます