0

编写一个程序,该程序可以从一组超级键中输入并将所有可能的候选键从输入输出到输出文件(名为“candidate-keys”)。一个示例的超级键如下所示: ABCF CDF ACDF BCDF ABCDF ABCEF CDEF ACDEF BCDEF ABCDEF

包含所有可能候选键的输出:ABCF CDF

在示例中,我不明白如何从超级键中获取该结果,任何信息都会有所帮助。谢谢

4

1 回答 1

1

我认为如果提供的超级键是关系的所有可能的超级键,那么在其中找到候选键的算法如下:

考虑一对超级密钥 S1、S2。如果 S1 包含在 S2 中,则消除 S2。如果 S2 包含在 S1 中,则消除 S1。否则两者都保留。

对所有对重复该操作,直到没有超级键可以被消除。其余的应该是关系的候选键。

于 2018-09-28T13:54:42.103 回答