表的分解中的依赖性保留

时间:2012-12-14 10:08:50

标签: normalization database-normalization

我对数据库关系(表)的依赖性保留属性感到困惑。我们是否必须查看初始FD集或其他什么?我试图解决这个问题上的一些问题。在此之前的问题都是我的初始估计,即“查看给定的FD集合”。如果你在新的关系集中没有丢失任何一个,那么这就是依赖保留'。

但是当我提出这个问题时,我很困惑。

考虑关系R =(A B C D E F G H)和以下FD集:

  • FD1 E - > D
  • FD2 B,E - > C G
  • FD3 D,G - > E
  • FD4 C - > A B
  • FD5 E,G - > C
  • FD6 A,E - > B D
  • FD7 C,E,D - > G
  • FD8 A,G - > E

这些是给定的关系

  • R1(E F G H)
  • R2(A B E G)
  • R3(C D E G)
  • R4(A B C)

答案说这种分解是依赖保留。根据我的估计,我们失去了FD2,所以这绝不是依赖保留。

我需要一位专家为我澄清这个概念。

2 个答案:

答案 0 :(得分:0)

这个问题是家庭作业问题的一部分。当我做作业时,我不确定自己是否正确。

在我的回答中,我写道: 这种分解不是依赖性保留,因为在这种分解中我们松散了FD DF - > BC。

我的数据库老师接受了这个答案作为一个正确的答案我想在这里澄清这个问题。

Ferda

答案 1 :(得分:0)

分解是依赖性保持,因为FD2 BE-> CG可以通过关系R2(BE-> G)和R3(EG-> C)来实现。 关闭BE给CG。