0

私が関与しているプロジェクトのリレーショナル データベースを設計しています。Entity-Relationship AND 論理モデルがありますが、それらが正しいかどうかわかりません。いわば、正しい道を正しくたどったかどうかを確認するためにデータをテストする石の壁の方法はありますか?

これが正しいかどうかを教えてもらえますか?もしそうなら、私は自分が正しいことを知っています。

Galleryid、Name、Location、City、Postcode、Paintings on Display の各フィールドを指定すると、データ モデルは次のようになります。

Gallery (GalleryID, Location, City, Postcode)
Gallery Items (GalleryID, Paintings on Display)

展示されている絵画フィールドに繰り返しデータがあったためです。これで第3正規形になったかな?

4

2 に答える 2

1

ER データベースに関しては、「データベースの正規化規則」を参照する価値があります。

実用的な DB 正規化チュートリアルについては、こちらもご覧ください。

論理モデルに関しては、ビジネス ニーズに合わせて形成する必要があるため、言うのは困難です。とにかく、モデルに対していくつかのテストを作成して、探しているものが得られるかどうかを確認できます。

于 2012-04-23T10:24:00.280 に答える
0

簡単な経験則は次のとおりです。

  1. 原子性の原則に違反しないでください。コレクション全体を 1 つのフィールドに配置しようとすると、このフィールドがより「不透明」になり、適切にインデックスを作成したり、クエリを実行したり、他のテーブルに関連付けたりすることが難しくなります。
  2. また、DRY の原則に違反しないでください。機能の依存関係とデータベースの正規化について何も知らなくても、モデルを見て冗長性を特定しようとするだけで、モデルの品質について多くのことがわかります。実際、正規化の全体的な目的は、「自分自身を繰り返す」ことを避けることです。

あなたの特定のケースでは、Paintings on Displayが 1 つの値にすぎないと仮定すると (この場合、実際には と呼ばれる必要がありPainting on Displayます)、問題ないはずです。

興味がある場合のポイントLocationは、それは正確には何を意味し、複数のギャラリーで繰り返すことができるか?

于 2012-04-23T21:25:13.613 に答える