我在转换下图中的弱实体D时遇到问题

我应该这样做吗?D(A_pri_key, B_pri_key)
或者我应该分离D1(A_pri_key) and D2(B_pri_key)?
我更喜欢第二个选择,因为在转换C(A_pri_key, B_pri_key)时,第一个选择看起来非常像C
发布于 2015-03-07 21:37:35
我认为它应该是第一选择。
当我们构造弱实体的表时,它的每个属性都有列,并有一个额外的列用于放入强实体集(弱实体所依赖的实体集)的主键。
方法1
在这种情况下,D依赖于两个强实体。因此,D的主键=外键(指向A的主键)+外键(指向B的主键)。这将为D的每个实例定义一个唯一的键。
方法2
创建单独的表D1和D2将导致冗余。
在这种情况下,
D1的主键=鉴别器+外键(指向A)
D2的主键=鉴别器+外键(指向B)
在这里,对于D的一个特定实例,我们最终将拥有两个主键,一个来自D1,另一个来自D2。
https://stackoverflow.com/questions/28881203
复制相似问题