我有一个应用程序,它基本上是由许多较小的应用程序构建的。每个应用程序都有自己的个人偏好,但它们都共享相同的 5 个偏好,例如,应用程序是否显示在导航中,是否公开,是否应生成报告等。
Web 应用程序中的任何页面都需要知道所有这些常见的偏好,因为导航是由它构建的。所以最初我将所有这些偏好放在一个表中。然而,随着应用程序数量的增长(现在 10 个,最终大约 30 个),列数最终将达到 150-200 个左右。这些列中的大多数只是布尔值,但它仍然让我担心一张表中有这么多列。另一方面,如果我要将它们分成单独的表(每个应用程序的首选项),每次我需要查看首选项时我都必须将它们全部连接在一起,那么为什么不把它们全部放在一起呢?
在应用程序中,我可以将首选项分解为更小的对象,以便它们更易于使用,但从数据库的角度来看,它们是一个单一的实体。是把它们放在一张大桌子上更好,还是把它们分成更小的桌子,但每次请求时都强制进行许多连接?