关系数据库设计中如何找出候选键

how to find out the candidate key in relational database design

我得到了关系 R(A,B,C,D) 和函数依赖集 {A->B, B->C}。属性 D 未在函数依赖项集中的任何位置列出。

函数依赖集合中没有D怎么会有候选键?

我看过的每本数据库教科书都至少包含一个纸笔算法来确定给定关系的所有候选键。翻看你的课本。

通俗地说,不属于任何函数依赖的属性必须是每个 候选键的一部分。

在您的原始问题中,给定 R(ABCD) 和 F(A->B, B->C),您会将平凡的函数依赖性 D->D 添加到 F。唯一的候选键是 AD。

在您的评论中,给定 R(ABCD) 和 F(A->B, A->C, AC->D),唯一的候选键是 A。