要开发一个学生成绩管理系统,在数据库的数据表中应该包括:学生编号、学生姓名、性别、课程编号、课
A.SELECT 课程名称,开课院系,COUNT(课程编号)AS 选修人数; FOR 学生成绩,课程 WHERE课程.课程编号=学生成绩.课程编号; GROUP BY 学生成绩.课程编号 HAVING COUNT(*)<=2; ORDER BY COUNT(课程编号)
B.SELECT 课程名称,开课院系,COUNT (学号)选修人数; GROUP BY 学生成绩,课程编号 HAVING COUNT(*)<=2; ORDER BY COUNT(学号)
C.SELECT 课程名称,开课院系,COUNT(学号)AS 选修人数; FROM 学生成绩,课程 WHERE 课程.课程编号=学生成绩.课程编号; GROUP BY 课程名称 HAVING COUNT(学号)<=2; ORDER BY选修人数
D.SELECT 课程名称,开课院系,COUNT(学号)AS 选修人数; FROM 学生成绩,课程 HAVING COUNT(课程编号)<=2; GROUP BY 课程名称 ORDER BY 选修人数
学生.dbf:(学号C(8),姓名C(8),性别C(2),出生日期D,院系C(8))
课程.dbf:(课程编号C(4),课程名称C(10),开课院系C(8))
成绩.dbf:(学号C(8),课程编号C(4),成绩I)
A.SELECT 课程名称,SUM(成绩)AS 分数 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 课程名称
B.SELECT 课程名称,MAX(成绩) 分数 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 课程名称
C.SELECT 课程名称,SUM(成绩) 分数 FROM 课程,成绩; GROUP BY 课程.课程编号
D.SELECT 课程名称,MAX(成绩)AS 分数 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 课程编号
数据表 1.学生表 Student(SId,Sname,Sage,Ssex) SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 2.课程表 Course(CId,Cname,TId) CId 课程编号,Cname 课程名称,TId 教师编号 3.教师表 Teacher(TId,Tname) TId 教师编号,Tname 教师姓名 4.成绩表 SC(SId,CId,score) --SId 学生编号,CId 课程编号,score 分数
学生(学号,课程号,性别,专业)
成绩(学号,课程号,分数)
课程(课程号,课程名,学时数,学分)
学生、成绩和课程表的学号、姓名、性别、专业等字段的数据类型均为文本型,学时数,学分和成绩均为数字型。要查询“0201号学生选修的课程,列出他的姓名、选修的课程号和分数”。
(1)请指出此关系模式的候选键。
(2)写出该关系模式的函数依赖集。
(3)该关系模式属于第几范式?请简单说明理由。
(4)若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后每个关系模式的主键和外键。