0

私はテーブルを持っていて、それをさらにいくつかのテーブルに分割して3nfを取得しようとしていますが、誰かが私を助けてくれますか?Erwin Data Model Validatorを使用してテーブルを検証すると、警告は表示されません...しかし、3nf(

http://i43.tinypic.com/35mmuwx.png

と私のアーウィンスキーム:http: //i42.tinypic.com/2hnvx3o.png

助けていただければ幸いです)

4

1 に答える 1

0

あなたの間違いは、TitleとManagerではemployee_IDを持ってはいけないということです。Employeeテーブルにjob_Idとmng_idがあるので、マネージャーとTitleはテーブルに1回だけ存在し、従業員テーブルからIDで参照するだけです。job_start_dateとjob_end_dateは、別のテーブルを使用する本当の理由がない限り(複数の開始日/終了日を保存するなど)、Employeeテーブルに含める必要がありますが、そうではないようです。給与についても同じことが言えますが、最低給与と最高給与についてはわかりません。そのデータが役職に固有である場合、これら2つのフィールドは役職テーブルにある必要があります。

于 2012-04-19T10:32:27.363 に答える