5

我想知道如何找到无关的属性,虽然我读了很多我无法理解的文章。其中许多给出了无关属性的定义。我从 Abraham Silberschatz、Henry F. Korth、S. 的《数据库系统概念》一书中找到了 2 个示例。苏达山。

  1. FD F=(AB -> C , A -> C) 无关属性 = B
  2. FD F=(AB -> CD , A -> C ) 无关属性 = C

但是我也无法理解这两个,因为他们没有给出任何解释。谁能解释如何找到无关的属性?

4

4 回答 4

0

1)已在其他答案中解释
2)A->C 这意味着 C 可以从 A 派生。
AB->CD 可以分解为 AB->C 和 AB->D。
但是这里我们不需要 AB 来推导出 C,因为它可以从 A 推导出来。因此是多余的

于 2015-04-29T11:38:33.750 回答
0

第一个:
如果A可以识别C,那么如果你制作一个新的密钥作为A和B的复合密钥,它都可以识别C,但是你可以在没有B的帮助下识别C,所以b是无关的属性。

第二:
根据阿姆斯特朗的分解规则

Ab->cd 将分解为 AB->C AND AB->D
,因此现在可以仅使用 AB 的键来识别 c 和 D,这使 C 成为 A->C 中的外部属性并将其删除。

于 2015-01-02T20:22:07.897 回答
0

如果A可以识别C,那么如果你创建一个新的键作为A和B的组合键,它都可以识别C,但是你也可以在没有B的帮助下识别C,所以b是无关属性。

于 2013-07-10T18:09:01.583 回答
0

1 从第二个依赖可以看出,C 可以由 A 决定。所以在第一个依赖 AB->C 中,B 是无关的。

2 从第二个依赖A->C中可以看出C可以被A去训练,也就是说我们并不真的需要Axxx->C,但是我们需要AB来确定D。所以在这种情况下C是多余的。

于 2017-11-11T00:32:49.197 回答