我目前有一個表佔多數(如99%)的一個字段的數據依賴於一個字段,但其他1%依賴於其他字段。如何設計一個具有類似條目的數據庫表
例如,我有以下的價格表
product PK
color PK
cost
以下是該表中某些條目
product|color|cost
pen|red|$1.00
pen|blue|$1.00
pen|green|$1.00
etc....
pen|black|$0.90
pen|white|$0.85
pencil|red|$0.50
pencil|blue|$0.50
pencil|green|$0.50
etc...
pencil|black|$0.35
pencil|gray|$0.40
我與此表時遇到的問題是,每當我有添加一個產品或顏色我必須添加數百個類似的條目到這個表。
我目前想存儲通過以下方式
pen|all_other_colors|$1.00
pen|black|$0.90
pen|white|$0.85
pencil|all_other_colors|$0.50
pencil|black|$0.35
pencil|gray|$0.40
我在正確的軌道上或有更好的數據庫設計,處理這個問題的數據?任何幫助或鏈接將不勝感激。我無法爲這個問題找到正確的措辭。
獲取信息可能你總結你的問題?是不是要單獨管理每個價格?或者?即使沒有價格,您也需要管理哪些產品組合可用 – 2012-07-15 16:30:59
在我的設計中,我假定產品在顏色表中可以有任何顏色。我希望減少插入數百種產品顏色組合條目的需求(每次我添加一個新產品(經常發生),並且只處理產品顏色組合的定價例外情況(這很少見)。您的答案是那種我正在尋找的東西。我可能會用一個「異常」表,但我不確定是否違反了任何數據庫設計理論。謝謝您的幫助! – 2012-07-15 20:20:31