【问题标题】:Prime attribute and keys主要属性和键
【发布时间】:2023-03-18 06:25:02
【问题描述】:

主属性只是候选键的成员还是也可以是超级键?我有点困惑,因为我在某处读到主要属性可以是 ANY 键的成员,而其他人说它需要是候选键的成员。

【问题讨论】:

    标签: key 3nf bcnf


    【解决方案1】:

    主属性是候选键的成员。

    一般来说,“key”是“candidate key”的同义词,而“superkey”是与其他属性一起的“candidate key”(因此,使用这个术语,“superkey”不能是“candidate key”) .

    另一方面,一个稍微不同的术语说“超级键”是决定所有其他属性的东西(因此,即使是“候选键”也被认为是“超级键”)。使用这个术语,当它是具有其他属性的“候选键”时,有人谈到 适当的(或可能是严格的)“超级键”。

    所以,总结一下:

    • “候选键”是一组属性,它确定关系的所有属性,因此我们无法从中删除任何属性而不会丢失此属性(并且在此定义中每个人 同意)

    • “超级键”可以有两种不同的解释: a) 具有零个或多个其他属性的“候选键”;或 b) 具有其他属性的“候选键”。

    最后,当你单独找到“key”这个词时,它几乎总是“candidate key”的同义词。

    【讨论】:

    • CK 是超级键。使用“superkey”来表示 CK 的正确超集是对该术语的错误使用。 (我有兴趣在主管材料中查看此类用途的参考。)此外,单独的“密钥”经常意味着超级密钥。例如在 SQL 约束中。
    猜你喜欢
    • 1970-01-01
    • 2021-03-17
    • 2012-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多