2014-04-09 78 views
0

我是一種學習一切正常形式之間的差異,直到我碰到下面,從A Simple Guide to Five Normal Forms in Relational Database Theory這個例子是第5範式嗎?

我們不會嘗試第五範式的全面闡述,但說明了一個核心概念常用的例子,即涉及代理商,公司和產品的例子。如果代理商代表公司,代理公司製造產品,代理商銷售產品,那麼我們可能想保留哪個代理商銷售哪家公司的產品的記錄。這些信息可以被保存在一個記錄類型有三個大塊:

----------------------------- 
| AGENT | COMPANY | PRODUCT | 
|-------+---------+---------| 
| Smith | Ford | car  | 
| Smith | GM  | truck | 
----------------------------- 

這種形式是必要的,一般情況下。例如,儘管Smith代理銷售福特生產的汽車和通用汽車生產的卡車,但他不銷售福特卡車或通用汽車。因此,我們需要三個字段的組合來知道哪些組合是有效的,哪些不是。

基本上,這張表在4NF,因爲它在3NF(所有屬性都依賴於候選鍵,在這個例子中都是3),而且表並不意味着多值依賴。但是這張桌子現在還在5NF嗎?儘管它沒有被分解(由於它由於信息的丟失而不能再分解)的事實?

回答

1

它在5NF。

你的短語「它不分解」和「不能再分解」並不意味着同一件事。您應仔細閱讀Kent Beck文章中引用您的引用的段落和示例。