我对数据库关系(表)的依赖保留属性感到困惑。我们是否必须查看初始 FD 集或其他什么?我试图解决关于这个主题的一些问题。这个问题之前的问题都满足了我的初步估计,即“查看给定的 FD 集”。如果您在新关系集中没有丢失它们中的任何一个,那么这就是依赖保留。
但是当我谈到这个问题时,我感到很困惑。
考虑关系 R = (ABCDEFGH) 和以下 FD 集:
- FD1 E -> D
- FD2 B, E -> CG
- FD3 D, G -> E
- FD4 C -> AB
- FD5 E, G -> C
- FD6 A, E -> BD
- FD7 C, E, D -> G
- FD8 A, G -> E
这些是给定的关系
- R1 (EFGH)
- R2 (ABEG)
- R3 (CDEG)
- R4 (ABC)
答案说这种分解是依赖保留的。根据我的估计,我们失去了 FD2,所以这一定不是依赖保留。
我需要一位专家为我澄清这个概念。