首页 > 试题广场 >

定义学生、教师和课程的关系模式 S (S#,Sn,Sd,Dc

[单选题]

定义学生、教师和课程的关系模式 S (S#,Sn,Sd,Dc,SA )(其属性分别为学号、姓名、所在系、所在系的系主任、年龄); C C#,Cn,P# )(其属性分别为课程号、课程名、先修课); SC S#,C#,G) (其属性分别为学号、课程号和成绩),则该关系为(

  • 第二范式
  • 第一范式
  • 第三范式
  • BCNF范式
范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,满足不同程度要求的为不同范式。目前关系数据库有六种范式:第一范式( 1NF )、第二范式( 2NF )、第三范式( 3NF )、 Boyce-Codd 范式( BCNF )、第四范式( 4NF )和第五范式( 5NF )。满足最低要求的范式是第一范式( 1NF )。在第一范式的基础上进一步满足更多要求的称为第二范式( 2NF ),其余范式以次类推。一般说来,数据库只需满足第三范式( 3NF )就行了。 第一范式:主属性(主键)不为空且不重复,字段不可再分(存在非主属性对主属性的部分依赖)。 第二范式:如果关系模式是第一范式,每个非主属性都没有对主键的部分依赖。 第三范式:如果关系模式是第二范式,没有非主属性对主键的传递依赖和部分依赖。 BCNF 范式:所有属性都不传递依赖于关系的任何候选键。 题目中关系模式满足第二范式,但在关系模式 S 中,学生所在系依赖于学号( S# Sd ),但系本身确定了系主任( Sd Dc ),存在传递依赖,不满足第三范式。故本题答案为 A 选项。
发表于 2017-02-13 10:29:20 回复(1)

1NF: 原子性,属性不能再分

2NF:不存在部分函数依赖,如(A, B, C, D),(A,B)为候选键,不能由候选关键字的一部分决定非关键字,如B->C

3NF:不存在传递函数依赖,如A->B->C

BCNF:进一步消除主属性的传递依赖(A, B, C, D), 候选键有(A,B)和(B,C),所以主属性为A,B,C,不存在(A,B)->C, 

发表于 2018-11-13 10:58:39 回复(0)
主要看第一张表,也就是下面这张表:
S (S#,Sn,Sd,Dc,SA )(其属性分别为学号、姓名、所在系、所在系的系主任、年龄)
这张表没有消除函数传递依赖,所以不满足第三范式。
为什么说存在函数传递依赖呢?
因为“学号”直接决定了“所在系”,而“所在系”直接决定了“所在系的系主任”,所以“所在系的系主任”和“学号”之间存在传递依赖的关系。
而这三张表都消除了函数部分依赖,所以满足第二范式,因此选A。
发表于 2020-04-01 15:46:50 回复(0)
为什么不能选第一范式?
发表于 2017-12-17 19:35:05 回复(0)
这题到底问得是哪个表的关系范式,不是有3个表吗
发表于 2017-03-30 12:09:37 回复(0)
一开始我也不确定是问哪个表,后面想想可能是问 3个表都符合哪个范式。那么就好理解了。

首先第一范式是肯定符合的,无须多说。(关于范式的理解,大家可以百度 :数据库范式 知乎   。 知乎第一个回答就讲述得很清楚)

其次第二范式。 表S 主码:学号。  由第二范式可知,如果主码只有1个属性的时候,该关系必定符合2NF。因为只有1个主属性,非主属性不可能存在对主属性的部分函数依赖。
表C的主码是C#,课程号,也是1个主属性,显然也符合2NF。 
表SC的主码是 学号+课程号,非主属性是成绩。如果主码的真子集可以唯一推出非主属性,那么就不符合2NF。
对于SC,可得: (学号,课程号)→ 成绩, 但单独的学号并不能推出成绩,单独的课程号也不能推出成绩。因此,表SC也符合2NF。

然后我们看3NF。表S就已经很明显了。学号可以推出姓名,姓名可以推出系名,系名又可以推出系主任名。不符合3NF。
因此,选2NF。
发表于 2019-07-27 22:01:18 回复(0)
范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,满足不同程度要求的为不同范式。
第一范式:数据库中每一个属性都不可再分(不可以用多重值)。
第二范式:关系模式是第一范式,并且必须要有主键,同时每个非主属性完全依赖于主键,不存在部分依赖。
第三范式:关系模式是第二范式,并且不存在非主属性对主键的传递依赖(在关系模式中,如果X→Y,Y→Z,且Y不决定X和Z不属于X,那么X→Z是传递依赖)。
BCNF范式:所有属性都不传递依赖于关系的任何候选键。

本题中,关系模式满足第二范式,但在关系模式S中,学生学号本身确定了所在系(S#→Sd),但系本身确定了系主任(Sd→Dc),存在传递依赖,不满足第三范式,故本题答案为A。
编辑于 2020-05-26 14:48:25 回复(0)
所以到底选择哪项?
发表于 2019-07-27 20:42:29 回复(0)
表C课程号可以判定课程名,存在非主属性对主码的部分函数依赖,应该是第一范式
发表于 2018-10-19 18:11:30 回复(0)
我认为,表C仅仅课程号就能确定其先修课是什么,所以存在部分依赖,所以不满足2NF,求解释
发表于 2018-08-23 21:07:59 回复(0)
没看到
发表于 2018-02-08 13:41:24 回复(0)
第一范式:主属性(主键)不为空且不重复,字段不可再分(存在非主属性对主属性的部分依赖)。 第二范式:如果关系模式是第一范式,每个非主属性都没有对主键的部分依赖。 第三范式:如果关系模式是第二范式,没有非主属性对主键的传递依赖和部分依赖。 BCNF 范式:所有属性都不传递依赖于关系的任何候选键。 题目中关系模式满足第二范式,但在关系模式 S 中,学生所在系依赖于学号( S# → Sd ),但系本身确定了系主任( Sd → Dc ),存在传递依赖,不满足第三范式。故本题答案为 A 选项。
发表于 2017-12-04 11:42:36 回复(0)
表  S (S#,Sn,Sd,Dc,SA   )中 ,系主任Dc依赖于系名Sd,Sd依赖于主键 S#
为什么还满足第二范式?
发表于 2017-03-23 20:27:12 回复(2)