我对数据库关系(表)的依赖关系保留属性感到困惑。我们必须看看初始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)
Answer说这种分解是保持依赖关系的。根据我的估计,我们失去了FD2,所以,这一定不是依赖性保留。
我需要一位专家来为我澄清这个概念
这个问题是家庭作业问题的一部分。我不确定我做家庭作业时的想法是否正确。
我在回答中写道:该分解不保留依赖关系,因为在该分解中,我们松开了FD DF-->BC。
我的数据库老师接受了这个答案,认为这是一个正确的答案,我也想澄清一下这个问题。
Ferda
分解是依赖性保留的,因为FD2 BE->CG可以通过关系R2(BE->G)和R3(EG->C)来实现。BE的闭合给出CG。