首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在面试场景中处理具有新关系子类型的表模式?

如何在面试场景中处理具有新关系子类型的表模式?
EN

Database Administration用户
提问于 2018-09-13 02:24:31
回答 1查看 308关注 0票数 1

我有一张“面试”和“面试评论”的表格,既包括面试官,也包括受访者。当项目启动时,只需要一种类型的评审,如下所示

但是现在我们增加了一种新的面试类型,它需要基于面试类型的不同类型的评论。我添加了许多(M:N)关系来存储面试类型,但我很难找到最好的方法来添加多个评论类型。

我想到的一个解决方案是添加另一个表,用于评审,其中包含了新的评审类型的所有数据,其中包含多到一个(M:1)关系。这意味着应用程序必须根据面试类型有条件地查找评审,并且将导致所有未使用的评审类型的空白列.

你会怎么安排这个?

EN

回答 1

Database Administration用户

发布于 2018-10-05 19:43:41

我的直觉是,模式正在迅速变得过于复杂。

让我们回头想想“实体”和“关系”。

有两个主要的实体:人物和评论。看看把面试官和应聘者放在同一张桌子上是不是太笨拙了。如果列太不一样,则创建2个表。评论也是一样。

然后提供关系表的最小数量--但只在有许多关系时才提供。(许多:1不需要额外的桌子。)“面试”很可能是一个关系表,但在时间/何地/多长/类型/等方面有一些额外的列。

不要“过度正常化”。例如,面试类型可能是少数几个关键词之一。这些可以在ENUM中实现,而不需要额外的表。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/217452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档