数据库系统概论范式级别判断

范式级别判断

题目:U=ABCDE, F={ A->C, BC->D, CD->A, AB->E}

第一步(求候选码):求候选码的过程略去,结果为{(AB), (BC)}

第二步(判断1NF):呃,肯定都是1NF,不是的话这题不用出了

第三步(写出非主属性、候选码):这一步是为了方便后续判断。

非主属性是未出现在候选码中的属性,本题为DE。候选码为AB和BC。

如下列出:

非主属性:DE;候选码:AB、BC

在题干中标记非主属性(粉色字体):

F={ A->C, BC->D, CD->A, AB->E}

第四步(判断2NF):2NF的定义为非主属性应完全函数依赖于任一候选码。即看非主属性的左侧的推断条件中是否出现了候选码,也就是题目中D和E的左侧是否出现了AB或BC(AB或BC必须一起打包出现,不能只出现单个的A,B之类)。举例来说,假如题目中存在A->D,D是非

主属性,而左侧只有A,没有和B一起出现,即D不是完全函数依赖于候选码AB的,它只部分依赖了AB中的A。观察当前题目,非主属性D和E的

左侧均是候选码之一,并不存在这种情况,那么它是满足2NF的。

第五步(判断3NF):在满足2NF的前提下(注意满足2NF之后再看3NF哦~),3NF的定义为不存在非主属性对任一候选码的传递函数依赖。举个例子,如果有AB->D,又有D->E,即非主属性E通过非主属性D作为桥梁才能推出,这就是传递依赖。尽管候选码AB能推出D和E,但E是间接推出的,也不可以出现,达咩。继续观察题目,并没有这种情况,

那么是满足3NF的。

第六步(判断BCNF):在满足3NF的前提下,BCNF的条件是每一个决

定因素(即每一个依赖关系的左侧)都包含码。即决定因素必须包含候选码中的任意一个。即在本题中,每个决定因素要么有AB,要么有

BC。要么A和B成对出现,要么B和C成对出现。该题中,第一个关系A-

>C就只出现了A,A没有和B一起出现,所以本题不满足BCNF。注意这里和2NF的区别,2NF只看针对非主属性的左侧,而BCNF要看所有依赖关

系的左侧。

因此本题为3NF。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hi~喜马拉雅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值