我按照 PDF中的算法查找给定函数依赖关系的所有候选键。查找关系的所有候选键
我发现我的所有属性都是中间属性,因此没有必要的属性。算法的第4步(第6页)说:Let L be the list of all non-empty subsets of M (the middle-ground attributes)
。然而,我有7个中间的属性,这意味着我需要127个元素。我做错了什么?
请有人可以解释我应该如何找到一组函数依赖关系的候选键?
我按照 PDF中的算法查找给定函数依赖关系的所有候选键。查找关系的所有候选键
我发现我的所有属性都是中间属性,因此没有必要的属性。算法的第4步(第6页)说:Let L be the list of all non-empty subsets of M (the middle-ground attributes)
。然而,我有7个中间的属性,这意味着我需要127个元素。我做错了什么?
请有人可以解释我应该如何找到一组函数依赖关系的候选键?
您引用的论文确实表明您需要从具有127个元素的L开始。不要忘记,一旦发现了一组中间基本属性,可以将一组必要属性补充到候选密钥,则L的大小可以迅速减小。
步骤4:在PDF计算所有超密钥不是候选人key..You不会得到127个候选键..
这里是候选人和超级关键的区别:
超级键:超级密钥代表密钥的超集。 Super Key是一个或多个属性的集合,可以统一采用,并可以唯一标识所有其他属性。
候选键: 候选键是超级键对于没有真子集是一个超级的关键。换句话说,候选键是最小的超级键。
让我们考虑一个例子:
的关系是R(A,B,C,d,E)
的函数依赖是:
A→BCDE这意味着属性'A'唯一确定了其他属性B,C,D,E。 BC→ADE这意味着属性'BC'共同确定关系中的所有其他属性A,D,E。
主键:一个
候选键:A,BC
超级键:A,BC,ABC,AD
ABC,AD不是因为这两个候选键是不是最小超级按键。
希望这有助于
是否有您正在使用的特定语言?如果有的话,我们可以为你重新标记问题,这样你可以得到更多的帮助。欢迎来到该网站;) –
嗨,没有我知道的特定语言。我只是想学习数据库设计和约束,不知道如何计算候选键。除数据库之外无法想到任何其他标签。 – steve
这是功课吗? ;) – landons