【问题标题】:Normalization, Primary Key Dependency Candidate Key规范化,主键依赖候选键
【发布时间】:2015-07-24 05:55:49
【问题描述】:

在分解过程中对关系进行规范化。 如果我达到关系中的所有属性都依赖于主键的地步,我可以假设它们都将完全依赖于不同的候选键吗? 如果不是这种情况,请给我一个示例,说明所有属性都依赖于主键,但其中一些属性依赖于其他候选键的一部分。

我开始学习数据库

【问题讨论】:

    标签: database dependencies key normalization candidate


    【解决方案1】:

    代理主 ID 使示例变得非常简单:

    (row_id PK, student_id, course_id, student_name)
    

    其中row_id(student_id, course_id) 是候选键,student_id -> student_name。当然,row_id 可以简单地确定任何其他属性(如果它是自动递增的数字)。

    【讨论】:

    • 好的,事情越来越清楚了。就一点。如果我们已经拥有可以作为主键的 (student_id),我看不到任何代理键实用程序。我的陈述中只有代理键的情况吗?谢谢
    • 不,只要表有多个候选键,其中至少一个是复合键,就会发生这种情况。考虑 Wikipedia 的 2NF 页面上的最后一个示例:en.wikipedia.org/wiki/Second_normal_form#2NF_and_candidate_keys。我还可以使用日期、SSN、笛卡尔/极坐标作为候选键等构建其他示例。
    • 好的,谢谢您的帮助。我现在必须检查每个候选键
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    • 2012-12-17
    • 2014-03-27
    • 2012-05-21
    相关资源
    最近更新 更多