我有这个 R(A,B,C,D,E) 有 FD 的:A->B,CD->E,E->A,B->D 对于这个问题我需要找到最小的键R. 我认为我将其计算为 CA、CB、CD 或 CE(都是可选的)。
这个问题的第二部分:R(A,B,C,D) with FD's : A->B, B->C, C->D, D->A 对于这一部分,我需要列出所有候选键,但我似乎找不到与我在 3 列中的第一种方法不同的方法。(除非三列方法不适用于最小键?
谢谢
我有这个 R(A,B,C,D,E) 有 FD 的:A->B,CD->E,E->A,B->D 对于这个问题我需要找到最小的键R. 我认为我将其计算为 CA、CB、CD 或 CE(都是可选的)。
这个问题的第二部分:R(A,B,C,D) with FD's : A->B, B->C, C->D, D->A 对于这一部分,我需要列出所有候选键,但我似乎找不到与我在 3 列中的第一种方法不同的方法。(除非三列方法不适用于最小键?
谢谢
一般来说,(候选)键是一组属性,它决定了关系的所有属性,它被称为“最小集”(具有此属性的属性),在某种意义上说,如果没有它,您就无法从中消除任何属性失去作为钥匙的属性。这与superkey形成对比,superkey确定关系的所有属性,但可以具有比那些严格必要的属性更多的属性。所以,“最小密钥”没有正式的定义:如果你有一组属性,那么它可以是一个(候选)密钥,或者一个超级密钥,或者一个非密钥。
在第一个示例中,您已正确识别密钥,它们是 CA、CB、CD 或 CE。在第二个示例中,所有属性都是键(即 A、B、C 和 D)。在这两个示例中,可用于查找密钥的方法没有区别。