【发布时间】:2019-01-10 22:26:19
【问题描述】:
当没有任何只有 1 个属性的键时,我很难找到关系的候选键,所以我必须找到复合候选键。
我有关系 R(A, B, C, D, E, F, G, H, I, J, K) 和 FD:
A、B → D
A → C, E
B→G
G → H, I
C → J, K
我必须找到 R 的键,但没有任何具有 1 属性的键。为了找到 R 的所有候选键,我计算 2 个字段的每个组合,或者我只检查组合 {A, B} 是否是候选键,因为有一个具有该组合的 FD?
提前致谢
【问题讨论】:
-
你似乎很困惑,你的理由没有道理。在您的帖子中编辑 CK 的定义;然后显示您为找到所有 CK 所采取的所有步骤。 PS您说“我有[以下] FD”,但这还不足以找到 CK——当你通过定义和/或已发布的算法查找所有 CK 时,你会看到——我们需要足够了解才能找到确定持有的所有个FD。所以你需要知道那个列表是一个cover。 PS“我计算 2 个字段的每个组合”很困惑——复合 CK 有 2 个或更多属性。 (那句话也不清楚。)(你的第一句话也是。)
-
谷歌“如何找到候选键”,你会发现很多资料。
标签: database composite-key candidate-key