Database design 解释无关属性示例

Database design 解释无关属性示例,database-design,Database Design,我想知道如何找到无关的属性,虽然我读了很多文章,但我不理解它们。其中许多给出了无关属性的定义。 我从Abraham Silberschatz,Henry F.Korth,S.Sudarshan的书中找到了两个例子 FD F=(AB->C,A->C) 无关属性=B FD F=(AB->CD,A->C) 无关属性=C 但我无法理解这两个,因为他们没有给出任何解释。有人能解释一下如何找到无关属性吗?如果A可以识别C,那么如果您将一个新的键作为A和B的组合键,那么它将能够识别C,但是您可以在没有B帮助的

我想知道如何找到无关的属性,虽然我读了很多文章,但我不理解它们。其中许多给出了无关属性的定义。 我从Abraham Silberschatz,Henry F.Korth,S.Sudarshan的书中找到了两个例子

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

  • 但我无法理解这两个,因为他们没有给出任何解释。有人能解释一下如何找到无关属性吗?

    如果A可以识别C,那么如果您将一个新的键作为A和B的组合键,那么它将能够识别C,但是您可以在没有B帮助的情况下识别C,因此B是无关属性。

    对于第一个:
    如果A可以识别C,那么如果你将一个新的键作为A和B的复合键,它将能够识别C,但是你可以在没有B帮助的情况下识别C,所以B是无关的属性

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

    Ab->cd将分解为Ab->C和Ab->D
    现在to只能用AB键识别c和D, 使C成为A->C中的外部属性并将其删除。

    1)已在其他答案中解释过
    2) A->C,意味着C可以从A派生。
    AB->CD可以分解为AB->C和AB->D.
    但是这里我们不需要AB来派生C,因为它可以从A派生。因此,从第二个依赖项中,我们可以看到C可以由A确定。因此在第一个依赖项AB->C中,B是无关的。
    2从第二个依赖项A->C中,我们可以看到C可以被A删除,这意味着我们不需要Axxx->C,但我们需要AB来确定D。所以在这种情况下,C是额外的。是的,第一个可以,但问题是第二个。我无法理解第二个,因为在删除C作为无关属性时,我们丢失了A->C关系。