数据库_范式理论1

笔记:

候选关键字即为候选码。

题目:

一、  
设有关系模式  R(职工名,项目名,工资,部门名,部门经理)
 如果规定每个职工可参加多个项目,各领一份工资;每个项目只属于一个部门管理;每个部门只有一个经理。
1)试写出关系模式R的基本函数依赖和关键码。
2)说明R不是2NF模式的理由,并把R分解成2NF模式集。
3)进而把R分解成3NF模式集,并说明理由。
二、指出下列关系模式是第几范式。
 (1) R(X,Y,Z), F={XY->Z}
 (2) R(X,Y,Z), F={Y->Z,XZ->Y}
 (3) R(X,Y,Z), F={Y->Z,Y->X,X->YZ}
 (4) R(X,Y,Z), F={X->Y,X->Z}
 (5) R(W,X,Y,Z), F={X->Z,WX->Y}

解答:

(1)根据题意可知有如下的函数依赖关系
(职工名,项目名)→工资
项目名→部门名
部门名→部门经理
原因:

(2)根据(1),由于部门名,部门经理只是部分依赖
于主键,所以该关系模式不是2NF应该做如下分

R1项目名部门名部门经理
R2(职工名,项目名,工资)
以上两个关系模式都是2NF模式
(3)R2已经是3NF,但R1不是,因为部门经理传递
依赖于项目名.

故应该做如下分解
R11(项目名部门名)
R12(部门名部门经理)
分解后形成的三个关系模式R11,R12,R2均是
3NF模式
.
 (1) R(X,Y,Z), F={XY->Z}
 (2) R(X,Y,Z), F={Y->Z,XZ->Y}
 (3) R(X,Y,Z), F={Y->Z,Y->X,X->YZ}
 (4) R(X,Y,Z), F={X->Y,X->Z}
 (5) R(W,X,Y,Z), F={X->Z,WX->Y}
 答:
1)R是BCNF。R候选关键字为XY,F中只有一个函数依赖,而该函数依赖的左部包含了R的候选关键字XY。
2)R是3NF。R候选关键字为XY和XZ,R中所有属性都是主属性,不存在非主属性对的候选关键字的传递依赖。
3)R是BCNF。R候选关键字为X和Y,∵X→YZ,∴X→Y,X→Z,由于F中有Y→Z,Y→X,因此Z是直接函数依赖于X,而不是传递依赖于X。又∵F的每一函数依赖的左部都包含了任一候选关键字,∴R是BCNF。
4)R是BCNF。R的候选关键字为X,而且F中每一个函数依赖的左部都包含了候选关键字X。
5)R是1NF。R的候选关键字为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主属性对候选关键字的部分函数依赖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值