【发布时间】:2011-01-29 17:37:49
【问题描述】:
我已经搜索了大约一个小时的 stackoverflow,但找不到任何相关的主题,所以如果这是一个重复的问题,我深表歉意。
我的询问是这样的。数据库中是否存在太多表?即使结构井井有条,经过深思熟虑,并且完美地促进了设计意图?我有一个快速接近 40 个表的数据库 - 大约 10 个主表和 30 多个辅助表(联结表、“枚举”表等)。
我只是一个糟糕的开发人员 - 还是我应该尝试不同的东西?对我来说似乎太多了,我真的很害怕它会如何影响项目的性能。我在可能的情况下做了很多浓缩,在可能的情况下对类似的事情进行了分组,等等。
数据库是在 SQL Server 2008 中构建的。
【问题讨论】:
-
40 还小
-
那么你认为什么是大的?这对我来说是巨大的——在学校里,如果我们为复杂的应用程序超过 7 或 8 张桌子,我们就会失败。 ——虽然回想起来,dba老师并不是很聪明。
-
@Stacey 学校和现实生活是有区别的。即使是相对简单的业务应用程序也可以有 40 多个表。
-
顺便说一句——您的 DB 讲师很可能坚持使用少量表格以使评分易于管理并鼓励您避免不必要的复杂解决方案。但是,作业通常一次只关注一个问题(或少数问题相互作用的方式),而现实世界需要同时将多个(或多个)概念放在一起。
-
我的团队最近继承了一个不断增长的数据库,其中包含超过 440,000 个表!可以说我们正在重构为多租户解决方案。
标签: database-design sql-server-2008