含有多个候选码的主属性范围以及数据库范式判定问题
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/17 21:07:26
含有多个候选码的主属性范围以及数据库范式判定问题
关系模式R(U,F),U={H,I,J,K,L},F={H->I,H->J,J->K,IJK->L,L->H,L->K},从这个关系模式中明显看出有三个候选码,分别是(H)、(L)、(I J),请问此时的主属性和非主属性到底又是什么?在多个候选码的情况下如何判断范式?该模式属于第几范式?
关系模式R(U,F),U={H,I,J,K,L},F={H->I,H->J,J->K,IJK->L,L->H,L->K},从这个关系模式中明显看出有三个候选码,分别是(H)、(L)、(I J),请问此时的主属性和非主属性到底又是什么?在多个候选码的情况下如何判断范式?该模式属于第几范式?
主属性:一个属性只要在任何一个候选码中出现过,这个属性就是主属性.
非主属性:与上面相反,没有在任何候选码中出现过,这个属性就是非主属性.
所以 此时的主属性是:H,L,I,J. 非主属性是:K
范式的判断:
第一范式(1NF)无重复的列 属性不可分
第二范式(2NF)属性完全依赖于主键[消除非主属性对主码的部分函数依赖] 符合1NF,并且,非主属性完全依赖于码
第三范式(3NF)属性不依赖于其它非主属性[消除传递依赖] 符合2NF,并且,消除传递依赖
BC范式(BCNF):符合3NF,并且,主属性不依赖于主属性
由于存在 J->K,所以K部分依赖于候选码(IJ),所以不满足第二范式.所以该模式只属于第一范式.
非主属性:与上面相反,没有在任何候选码中出现过,这个属性就是非主属性.
所以 此时的主属性是:H,L,I,J. 非主属性是:K
范式的判断:
第一范式(1NF)无重复的列 属性不可分
第二范式(2NF)属性完全依赖于主键[消除非主属性对主码的部分函数依赖] 符合1NF,并且,非主属性完全依赖于码
第三范式(3NF)属性不依赖于其它非主属性[消除传递依赖] 符合2NF,并且,消除传递依赖
BC范式(BCNF):符合3NF,并且,主属性不依赖于主属性
由于存在 J->K,所以K部分依赖于候选码(IJ),所以不满足第二范式.所以该模式只属于第一范式.