【问题标题】:Convert To BCNF转换为 BCNF
【发布时间】:2013-01-28 06:14:06
【问题描述】:

我得到以下关系:

R(A,B,C,D,E)

以及以下功能依赖项:

F1 - AC -> D
F2 - D -> E
F3 - E -> A

我正在尝试将其转换为 BCNF 形式。

我采取的第一步是找出关系的可能键。

Keys: ABC, BCD, BCE

然后我检查了函数依赖是否符合 BCNF 形式,但它们不符合。 于是我尝试分解,得到以下结果:

R1(A,C,D) AC->D Keys: AC
R2(D, E) D->E Keys: D

我相信在这一点上,关系是 BCNF 形式并且是无损的,但不是保持依赖关系。

这似乎是处理这类事情的正确技术吗?我可能错过了一两步吗?

【问题讨论】:

    标签: database relational-database database-normalization


    【解决方案1】:

    我认为您的 BCNF 存在错误。在 R1 和 R2 之间,你已经失去了 B。

    键、ABC、BCD 和 BCE 是正确的。 (您需要 B、C 和 A、D 或 E 之一)。

    R1 (A, B, C, D), key ABC 和 R2 (D, E) with key D 是一个有效的规范化。

    【讨论】:

      猜你喜欢
      • 2012-07-31
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      • 2021-05-15
      • 1970-01-01
      • 2012-12-14
      相关资源
      最近更新 更多