私は次の関係を持っています。会社には複数の従業員がいます。各従業員は従業員番号によって定義され、 ZipCodeENr
のある住所に住んでいます。ZipCode を持つ City は、それ以外の場合はテーブル Employee に冗長性があるため、独自のテーブルです。したがって、Employee の外部キーです。EAddress
ZZipCode
ZZipCode
グループはその によって定義されるためGGroupId
、それが主キーになります。各グループには、任意の従業員であるグループ リーダーが 1 人います。したがってENr
、外部キーです。
各従業員は、グループなし、または 1 つ以上のグループで作業できます。このため、GroupMember
タプルが主キーENr
をGGroupID
定義し、両方が外部キーであるテーブルが存在します (太字と斜体の両方を行うことはできません)。
最後に、製品はその製品 ID によって定義されPId
、グループに関連付けられGGroupID
ます。
さて、ここにその記述された説明の関係があります。
Employee( ENr , EName, EGender, EAddress, ZZipCode , ESocNr, ESalery)
Group( GGroupId , GName, GCostNr, ENr )
GroupMember( ENr , GGroupID ) #両方のメンバーも外部キーです!
製品 ( PId、PName、PPrice、GGRoupId )
郵便番号 ( ZZipCode、ZCityName、SStateID )
州 ( SStateID、SStateName)
明確にするために、太字のメンバーは主キーで、斜体のメンバーは外部キーです。
その関係を に入れてみました3NF
。これが正しいことを誰かが確認できますか?