2014-07-14 50 views
0

我開始有點項目asp.net 4.5 + SQL 2008 R2爲我的朋友,所以他可以停止管理是在紙上;-)SQL建模 - 提示+最佳實踐

他可以租多間小屋,他旅行用品可以租用其他產品(電機,皮划艇,遊船點點,漁線,...)

我開始名爲木屋創建表小屋併爲可租用命名產品的表產品。但現在我在質疑自己是否應該只有一張桌子,並且都擁有兩張桌子?兩者都是就要有一個價格的歷史變化,但小屋是要去有未使用的產品的多個領域(例如:循環移位#of房間,牀#,最大的人,水,electicity?。 ..)。產品基本上只是名稱和描述。

這裏最好的實踐是什麼?在我們的例子中,我們在什麼時候合併或分割東西?

感謝您的幫助

理查德

+0

你可能要在這裏跳動。這實際上是一個普遍的觀點問題。 SO是圍繞特定的問題/問題。 – Andrew

回答

0

這取決於性能和明智,沒有什麼會決定它,但測試和基準測試。

最佳做法是以您的數據爲normalize

在你的情況下,你必須問自己:「小屋是另一種產品租賃?」或者某些產品屬於某些小木屋。

如果您同意第一條,合併定義會更有意義,如果您更注意分割表格可能更好。無論哪種方式,使用小數據集(因爲它聽起來像你正在處理[< 1M行])性能明智,這並不重要,你可以選擇對你最有意義的任何事情。

+0

那麼,產品和小木屋中的數據數量不會超過20行;-)並且與小木屋和產品沒有真正的生活關係。 Poeple只能去釣魚和租用產品,而不必住在小木屋裏;-)。我認爲我會分裂他們;-)。感謝提示和鏈接。 – Richard

0

我將如何做到這一點是有你的「產品」表,將被捆綁到產品中的「產品類型」列和擴展表「小屋」具有主 - 外鍵關係的表(Chalet類型)。

如果其他類型的「產品」需要跟蹤其他數據,此模型允許您添加其他表格。