2012-04-20 13 views

答えて

0

UserProductFrequenceOfUseUserProductとの間に1対多の関係(後者は関係そのものである)との間の多対多の関係であろう。

リレーションシップが独自の関係を持つことができるかどうかについてはコンセンサスがないことに注意してください。だから、いくつかは、それをモデル化することを好むよう:

  1. エンティティユーザー
  2. エンティティ製品
  3. エンティティ使用
  4. エンティティFrequenceOfUse
  5. 1-N関係:ユーザーパーティー製品使用は、これらのモデルはリレーショナルモデルです度数

の両方で行われ使用

  • N-1関係で参加:使用
  • 1-N関係でcipatesあなたは便利な私のブログにこの記事を見つけることができ

    CREATE TABLE user (id INT NOT NULL PRIMARY KEY, name TEXT, ...) 
    CREATE TABLE product (id INT NOT NULL PRIMARY KEY, name TEXT, ...) 
    CREATE TABLE frequence (id NOT NULL, description TEXT, ...) 
    CREATE TABLE usage 
         (
         user INT NOT NULL FOREIGN KEY REFERENCES (user), 
         product INT NOT NULL FOREIGN KEY REFERENCES (product), 
         frequence INT NOT NULL REFERENCES frequence, 
         PRIMARY KEY (user, product) 
         ) 
    

    :として編

  • +0

    感謝!私は同意しますが、あなたとユーザーの間にn-nの関係を作る可能性についてどう思いますか? – ziiweb

    +0

    @tirengarfio:もちろん、あなたのユーザーの設定の変更を追跡する必要がある場合、Aliceは2009年に1回、2010年に2回、ベスト歯ブラシを使用しました。サロゲート主キーを追加する必要がありますこの場合にも「使用法」に変更されます。 – Quassnoi

    関連する問題