范式的判断:方法+例题

您所在的位置:网站首页 传递闭包怎么求例题 范式的判断:方法+例题

范式的判断:方法+例题

2023-11-28 20:48| 来源: 网络整理| 查看: 265

范式的判断

例1:R=(A,B,C),F={A→B,B→A,C→A},请问这是第几范式?

判断步骤:一图了解范式

一、首先判断候选键:

分别找出只在左边出现、左右都出现、右边出现的键。

(其实能找到只在左边出现的键后,求闭包,若能导出全部的集合,便可以省去求LR和R,如果左边的不能求出全集,就要和LR组合就闭包)

L:C LR:A、B R:

因此候选键为C,非主属性为A、B

二、接着,按照以下流程

牢牢记住三个关键点:部分依赖、传递依赖、左边都是候选键

在这里插入图片描述适当简记忆三个步骤点:部分依赖、传递依赖、左边都是候选键

图片有点刷屏 重新放一下题目:R=(A,B,C),F={A→B,B→A,C→A}

1、判断是否为1NF

(一般来说,基本所有的范式都要满足1NF)

这里也分析一下,判断是否存在部分依赖:

只有一个候选键C,且就一个字母,所以不可能存在部分函数依赖

2、判断是否为2NF

这里需要特别注意满足传递依赖的两个条件,如:

C->A,A->B A!->C

即这里C可以通过A传递推出B,但是容易忽略的一点,就是还要满足A!->C,就是A不能直接导出C。 因此这里满足依赖传递。

如果这里A能直接推出C,那就是不满足传递依赖的。

因此为第二范式

以上即为解题过程,如果还没有理解,可以接着往下阅读!

例2:R=(A,B,C,D),F={B->D,D->B,AB->C},请问这是第几范式?

判断候选键: L:A LR:B,D R:C

求得AB+=U,AD+=U(D->B,AB->C) ,因此候选键有(A,B) 和 (A,D),非主属性:C

接下来三个步骤点:部分依赖、传递依赖、左边都是候选键 1、存在部分依赖:AB->C非主属性C完全依赖于候选键AB,至少为2NF 2、传递依赖:不满足,至少为3NF 3、左边都是候选键:当候选键为(A,B)时,D->B,不满足,故为3NF

例3:R=(A,B,C),F={A->B,B->A,A->C},请问这是第几范式?

判断候选键: L: LR:A,B R:

这里没找到L后,因此需要结合LR的元素

求A、B的闭包

A闭包={B,C}=U,B闭包={A,C}=U

发现二者的闭包都可以获得全集,因此候选键由A,B,非主属性:C

三个步骤点:部分依赖、传递依赖、左边都是候选键 1、存在部分依赖:候选键都是只有一个字母,所以不可能存在部分函数依赖,至少为2NF 2、传递依赖:B->A,A->C,并且A!->B,不满足,至少为3NF 3、左边都是候选键:A,B都是候选键,故为BCNF 1NF:属性原子不可分 2NF:非主属性都完全依赖于候选键 3NF:非主属性不传递依赖于候选键 BCNF:属性不传递依赖于候选键 最小依赖集,任意FD左边全是超键


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3