【问题标题】:BCNF project FD on the result relationsBCNF 项目 FD 关于结果关系
【发布时间】:2016-11-06 18:20:09
【问题描述】:

所以我与 FD 有关系 R(A, B, C, D, E)

{A->C, CE->B, BC->AD, D-E}.

我想将其标准化为 BCNF。

因为 A->C 和 D->E 违反了 BCNF。我从 ABCDE 中减去 C 和 E 这将是 ABD。但是我如何将原始关系的 FD 投影到新的 ABD 关系?有人告诉我,ABD 上的结果 FD 将是

{AB->D, AD->B}

我不太明白。

任何帮助将不胜感激!

【问题讨论】:

    标签: database relation database-normalization bcnf


    【解决方案1】:

    将一组依赖项投射到分解模式上的算法是指数型的,因为应该计算分解模式属性的每个子集的闭包,并查看闭包的哪些属性属于分解关系。然而,在简单的情况下,就像您的示例一样,很容易检查所有可能的子集(六个):

    A+ = AC
    B+ = B
    D+ = DE
    AB+ = ABCDE (D is present in ABD, so AB → D is in the projection)
    AD+ = ABCDE (B is present in ABD, so AD → B is in the projection)
    BD+ = BDE
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-24
      • 1970-01-01
      • 2018-05-15
      • 2018-03-20
      • 2016-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多