在对申请表中的数据进行标准化时,每个申请人将有一个配偶。 “申请人代码”作为主键。由于其基数,创建代理键似乎没有必要。
即使“配偶”与“申请人”具有一对一的关系,我是否还应该为“配偶”单独制作一个表格?如果是这样的话,是否允许两个表具有完全相同的主键?
标准化不是关键话题。这就是用法。如果
spouse
无关紧要,则无需额外的表格。
但是,如果您想阻止申请人向与配偶相同的部门招揽......
我什至会期望有一张桌子
person
。
语义。配偶也可以是申请人。在两种形式之间,婚姻状况可能会发生变化。保持数据最新并防止同一配偶出现两次或申请人的配偶没有原始申请人作为配偶是有意义的。 (您的 1:1 / 1:0)。
现在决定数据库规范化。 介绍一下
marriage
难道没有意义吗?实际上是一个交叉表。
(我宁愿看到一些更简洁的推理作为答案。)