我有一个事件日历应用程序,它背后有一个 sql 数据库,现在我有 3 个表来表示事件:
表 1:假期
列:ID、日期、姓名、位置、CalendarID
表 2:假期
列:Id、Date、Name、PersonId、WorkflowStatus
表 3:事件
列:Id、Date、Name、CalendarID
所以我有进入事件表的“一般事件”和进入这些单独表的特殊事件,如假期和假期。我正在讨论将这些合并到一个表中,并且只为一般事件保留位置和个人身份等列的空白。
表 1:事件:
列:Id、Date、Name、Location、PersonId、WorkflowStatus
有没有人看到每个选项有任何强烈的正面或负面影响。显然会有一些记录的列不一定适用,但它与这三个表有重叠。
最佳答案
无论以何种方式构造它,应用程序都必须处理变体类型。在这种情况下,我建议您在 DBM 中使用单一表示,因为替代方法是需要多个查询。
因此,这就变成了将复杂性置于何处的问题,即使在一个庞大的组织中,也很难生成足够多的事件来担心 DBMS 优化。应用程序代码比硬连线模式更灵活。这是一个偏好问题。
关于database - 我应该合并这些数据库表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3614386/