• ベストアンサー

データベース設計のサイト

先生が作った「見積書」の第1~第3正規化をせよという課題を出されました。見積書の上から、相手先欄に「○○会社御中」、「電話番号~」など書かれてあり、これも第1~3正規化せよとのことでした。表に記載された内容(例.商品コード、商品名、単価など)の第1~3正規化は教科書に載ってるんでなんとなくわかるんですが、表以外の要素についての正規化が、どうしたらいいものかと困っています。そこで、データベース設計のことについて記載されているサイトをご存知の方がいれば、お教えいただきたいのですが。 よろしくお願いいたいます。

質問者が選んだベストアンサー

  • ベストアンサー
  • 7marine
  • ベストアンサー率36% (59/160)
回答No.1

技術的なことなら http://www.atmarkit.co.jp/fdb/ なのですが、データモデリングはネットではあまり参考になるものが無いですね 書籍の方が参考になるかと。 http://www.amazon.co.jp/exec/obidos/ASIN/4798104868/ref=pd_sim_dp_5/503-7769593-2556751

DT50
質問者

お礼

ご回答ありがとうございました。

その他の回答 (1)

  • alioth
  • ベストアンサー率48% (13/27)
回答No.2

少し古い質問なんでみてないかもしれませんが、すこしアドバイスを。 学生さんだとおもいますが、細かいルールに気をとられて本質がみえていないように見受けられます。 まず、「関数従属」という言葉一つだけ覚えてください。 aの値が決まれば、bの値もただ一つ決まる。という関係のことを、bはaに関数従属するといいます。 例を挙げると、学生氏名は学籍番号に関数従属する。となります。 つまり、学籍番号が決まれば、氏名もただ一つ決まる。ということです。 これが解れば後は簡単、RDBの正規化は、 「一つのリレーション(表)には一つの主キーがある」 「主キー以外の項目は主キーだけに関数従属である」 この2つがなりたつようにするだけです。 これだけで、第三正規化を越えてBC正規化までいきます。 実務では、第二正規化のように中途半端な正規化が出来きる必要はまったくないのです。

DT50
質問者

お礼

アドバイスして頂き、ありがとうございます!