数据库第二范式

时间:2015-07-19 16:35:57

标签: database

我有关于第二范式的问题。该规则说:“当一个关系在1NF并且没有这样的非关键时,它处于第二种形式 属性取决于候选键的一部分,但取决于整个候选键。“(Neeraj Sharma,2010)我的问题是关于候选键。它只是关系的主键或所有可能的候选键。

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

它适用于任何候选键。如果只计算主键,只需添加一个代理ID即可将任何表放入3NF。但是,这无助于确保每个事实只记录一次而且与其他事实无关。

答案 1 :(得分:1)

试图通过一个例子来澄清你的怀疑:

根据2NF"关系中不允许部分依赖关系。"

假设这种关系:R(A,B,C,D) 假设有3个CK与这种关系有关(假设CK' s:AB,AC,B)。 然后首先编写CK中任何一个中存在的所有属性,这些属性称为Prime属性。其他属性称为非素数属性。 这里:             Prime属性(3)= {A,B,C}           非素数属性(1)= {D} 现在根据2 NF,任何FD都不应该采用这种形式:

  
    
      

这种FD在2NF中是不允许的:        "任何候选键的一部分(部分依赖)--->非Prime属性"

    
  

表示: 这里:C ---> D(2 NF中不允许,因为C是CK的一部分" AC" D是非素数属性)

希望这会有所帮助。有关更多详细信息,您还可以参考:Detailed explanation of Normal forms