【发布时间】:2017-04-18 07:03:24
【问题描述】:
我有一个具有函数依赖关系的关系 A、B、C、D、E
1) A->BC
2) CD->E
3) B->D
4) E->A
使用 1 得到 A,D,E,然后使用 4 得到 D,E
使用 2 得到 A、B、C、D,然后使用 3 得到 A、B、C,使用 1 得到 A
使用 2 得到 A,B,C,D,使用 1 得到 A,D
使用 4 得到 B,C,D,E,使用 2 得到 B,C,D,使用 3 得到 B,C
使用 3 得到 A,B,C,E,使用 1 得到 A,E,使用 4 得到 E
所以我会有 5 个超级键? (A、E、AD、BC、DE)。我会从我的超级钥匙中挑选唯一的钥匙。
因为我可以从 E 中获得 A,所以我可以删除 A 和 AD(因为 DE 相同),因为我可以从 A 中获得 BC,所以我可以删除它,所以我留下了
英、德
那会是我的超级钥匙吗?还是只是E?
【问题讨论】:
标签: database schema normalization functional-dependencies candidate-key