设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主键为SNO,学生选课关系SC(SNO,CNO,SCORE)的主键为SNO和CNO,则关系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主键为SNO和CNO,其满足 A. 1NF B.2NF C. 3NF D. BCNF
时间: 2024-02-14 21:08:21 浏览: 13
关系R已经满足第一范式(1NF)的要求,因为每个属性都是原子的,不可再分的。
关系R也满足第二范式(2NF)的要求,因为R的主键(SNO和CNO)包含了关系SC的主键(SNO和CNO),且R中的非主键属性(SSEX,SAGE,SDPART,SCORE)都完全依赖于主键。
关系R也满足第三范式(3NF)的要求,因为R中的非主键属性(SSEX,SAGE,SDPART,SCORE)之间不存在传递依赖关系。
因此,关系R已经达到了BCNF(巴斯-科德范式),选项D正确。
相关问题
设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主键为SNO,学生选课关系SC(SNO,CNO,SCORE)的主键为SNO和CNO,则关系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主键为SNO和CNO,其满足
以下条件:
1. R的属性集包含S和SC的所有属性;
2. R的主键为SNO和CNO;
3. SNO和CNO在SC中构成了外键,分别参照S和C的主键;
4. 在关系R中,S和SC的属性之间存在函数依赖关系,即SNO、SNAME、SSEX、SAGE、SDPART、SCORE都函数依赖于SNO和CNO;
5. R中不存在其他函数依赖关系。
综上所述,关系R可以通过自然连接S和SC得到,但是在关系R中,SNO和CNO是主键,而在S和SC中它们只是外键。这种关系设计方式可以避免数据冗余,同时保证数据的一致性和完整性。
STUDENT表有 sno sname ssex sage sdept,couse 有cno cname credit semester,sc有sno cno gradr,请使用SQL语句完成查询选修了生物信息学课程且成绩高于该门课程平均分数的学生的姓名。
SELECT s.sname
FROM student s, sc, couse c
WHERE s.sno = sc.sno
AND sc.cno = c.cno
AND c.cname = '生物信息学'
AND sc.grade > (
SELECT AVG(sc.grade)
FROM sc, couse
WHERE sc.cno = couse.cno
AND couse.cname = '生物信息学'
)
```