我目前正在修读关系数据库课程,但我无法理解功能依赖关系以找到合适的主键。
这是我的表格:D = {P,Q,R,S,T,U,V,W,X,Y,Z}
这是我的功能依赖集:
{P,R} - > {Q,T,U}
{T} - > {S}
{V,W} - > {X,Z}
{X} - > {Y}
有人可以了解如何找到D的主键吗?
答案 0 :(得分:1)
你弄清楚了; {PRVW}是D的唯一候选键。
但是你应该知道功能依赖性并不能确定“正确的主键”。相反,功能依赖性确定候选键集。通常有不止一个候选键。
没有正式的,合乎逻辑的基础来说,“这个候选键显然是主键,而其他候选键都不符合条件。”但是,选择其中一个通常是有实际意义的。例如,较窄的键在索引中占用较少的空间,这通常对应于更快的性能。因此,作为一个纯粹的实际问题,将最窄的候选键作为主键有时是有意义的。但是,这又是一个实际问题,而不是一个正式的逻辑问题。