2014-07-14 49 views
0

我开始有点项目asp.net 4.5 + SQL 2008 R2为我的朋友,所以他可以停止管理是在纸上;-)SQL建模 - 提示+最佳实践

他可以租多间小屋,他旅行用品可以租用其他产品(电机,皮划艇,游船点点,渔线,...)

我开始名为木屋创建表小屋并为可租用命名产品的表产品。但现在我在质疑自己是否应该只有一张桌子,并且都拥有两张桌子?两者都是就要有一个价格的历史变化,但小屋是要去有未使用的产品的多个领域(例如:循环移位#of房间,床#,最大的人,水,electicity?。 ..)。产品基本上只是名称和描述。

这里最好的实践是什么?在我们的例子中,我们在什么时候合并或分割东西?

感谢您的帮助

理查德

+0

你可能要在这里跳动。这实际上是一个普遍的观点问题。 SO是围绕特定的问题/问题。 – Andrew

回答

0

这取决于性能和明智,没有什么会决定它,但测试和基准测试。

最佳做法是以您的数据为normalize

在你的情况下,你必须问自己:“小屋是另一种产品租赁?”或者某些产品属于某些小木屋。

如果您同意第一条,合并定义会更有意义,如果您更注意分割表格可能更好。无论哪种方式,使用小数据集(因为它听起来像你正在处理[< 1M行])性能明智,这并不重要,你可以选择对你最有意义的任何事情。

+0

那么,产品和小木屋中的数据数量不会超过20行;-)并且与小木屋和产品没有真正的生活关系。 Poeple只能去钓鱼和租用产品,而不必住在小木屋里;-)。我认为我会分裂他们;-)。感谢提示和链接。 – Richard

0

我将如何做到这一点是有你的“产品”表,将被捆绑到产品中的“产品类型”列和扩展表“小屋”具有主 - 外键关系的表(Chalet类型)。

如果其他类型的“产品”需要跟踪其他数据,此模型允许您添加其他表格。