2012-10-27 57 views
1

我想了解BCNF和非平凡的FD,但我有點困惑。我目前設計了以下數據庫,並且我的理解應該是BCNF。BCNF和非平凡功能依賴

如果確實如此,您能否提供反饋?請注意*表示主鍵,用戶不能同時對同一個項目出價。一個項目可以有多個類別。 first_bid對每個項目都是唯一的,意味着最低要求的出價金額。開始,結束是拍賣的日期。

項目(ITEM_ID *,名稱,CURRENT_BID,buy_price,first_bid,num_bids,seller_id,開始,結束,說明) 出價(buyer_id *,時間*,量,ITEM_ID)
用戶(USER_ID *,位置,國家,評級)
類別(CAT_ID *, cat_name)
ItemCategory(ITEM_ID *,* CATEGORY_ID)

你能不能也請告訴我這將是每個關係的不平凡函數依賴?

+0

我擔心的是第二個表。請傢伙:(我已經花在這個17小時.... – shadowyman

回答

4

瑣碎依賴關係的示例:在出價表中,(buyer_id,time)確定時間。這是微不足道的,因爲它是輸入的一部分。

非平凡依賴關係的示例:在Category表中,cat_id可能會確定cat_name。如果沒有,那麼cat_id不能成爲關鍵。

如果你會告訴我們所有的FD,我們會告訴你哪些是非平凡的。

上BCNF附加的把手,這是一個方便的規則:只有一個候選鍵,是3NF任何表也是BCNF。除了你所說的那些之外,這些表中是否有其他候選鍵?

用戶表可能不在3NF中。位置是否確定國家?

+0

非常感謝沃爾特·米莉井位和國家不依賴對方,用戶可以寫任何東西到這兩個區域的位置一樣!「地獄」,國家:「百慕大」 我不知道這是爲每個表,但據我瞭解所有的文件描述符,因爲沒有其他的候選鍵(我看不到任何更多的,你可以看到更多?),那麼只有非平凡的依賴應該是決定其他屬性的關鍵因素,是嗎? – shadowyman

+0

因此,非常重要的DF將是: item_id - > name,current_bid,buy_price,first_bid,num_bids,seller_id,開始,結束,說明 buyer_id,time - >量,ITEM_ID user_id->的位置,國家,評級 cat_id-> cat_name item_id-> category_id – shadowyman

+0

發現FD不是數據庫設計技能。這是關於如何理解主題和數據。這是你的數據,不是我的。你告訴我什麼是FD。 –