【问题标题】:Lossless join decomposition property - only one lossless decomposition for a BCNF decomposition无损连接分解属性 - BCNF 分解只有一个无损分解
【发布时间】:2018-12-13 20:36:53
【问题描述】:

在课堂上,导师发表了以下声明:
There is only one(or none) lossless BCNF decomposition for a relation,
and two BCNF decompositions are lossless for a given R iff they are logically equal
我试图用反证法来证明,假设有两个 BCNF 分解,并找到矛盾,但找不到任何矛盾。
有没有直观的解释为什么这是正确的?

【问题讨论】:

    标签: sql database decomposition


    【解决方案1】:

    严格来说,导师的说法是错误的。

    想象一下任何分解,其中分解后的模式之一是 (K,D1,D2),具有唯一的 FD {K}->{D1,D2}。那是 BCNF。

    但是可以进一步分解为 (K,D1) 与唯一的 FD {K}->{D1} 和 (K,D2) 与唯一的 FD {K}->{D2}。这也是 BCNF(甚至是 6NF)。

    这意味着您有两个不同的可能分解,它们都是 BCNF。

    (自然而然地认为,在此类课程中,进一步分解是没有意义的,它们只是被忽略了,因为“无论如何,没有人会考虑它们”或诸如此类的东西,但这不是很有科学意识.)

    【讨论】:

      猜你喜欢
      • 2015-06-27
      • 2023-03-19
      • 2011-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-08
      • 2017-12-07
      相关资源
      最近更新 更多