某学校学籍科管理中心需建立一个学生选修课数据库,该数据库中需要存储和管理下列信息: 学生:学号
某学校学籍科管理中心需建立一个学生选修课数据库,该数据库中需要存储和管理下列信息:
学生:学号,姓名,性别,年龄
课程:课程号,课程名,学时
以上数据存在的约束条件是:
一名学生可以选修多门课程,一门课程可以有多名学生,并且选修课要有成绩的登记。
①画出该关系的ER图
某学校学籍科管理中心需建立一个学生选修课数据库,该数据库中需要存储和管理下列信息:
学生:学号,姓名,性别,年龄
课程:课程号,课程名,学时
以上数据存在的约束条件是:
一名学生可以选修多门课程,一门课程可以有多名学生,并且选修课要有成绩的登记。
①画出该关系的ER图
学生(学号,姓名,性别,年龄,家庭住址,电话)
课程(课程号,课程名)
教师(职工号,姓名,年龄,家庭住址,电话)
如果一个学生可以选修多门课程,一门课程可以有多个学生选修;一个教师只能讲授一门课程,但一门课程可以有多个教师讲授。,由于学生和课程之间是一个(51)的联系,所以(52)。又由于教师和课程之间是一个(53)的联系,所以(54)。
A.1对1
B.1对多
C.多对1
D.多对多
[说明]
在一个大学的选课系统中,包括了学生、系、教师和课程方面的信息。该系统中还包含了学生所选课程、成绩,教师所授课程,以及系开设的课程等信息。学生、教师、系和课程的属性如下:
学生:学号和姓名
教师:编号和姓名
系:系代号和系名
课:课程号和课程名
一个学生可以选多门课程,一名教师可以讲授多门课程,也可以多名教师讲授同一门课程,不同专业间也可以开设相同的课程。
用E-R模型对大学选课的数据库进行描述。
学生(学号,姓名,性别,专业、奖学金)
课程(课程号,名称,学分)
学习(学号,课程号,分数)
用关系代数表达式实现下列1—4小题:
(1)检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数
(2)检索学生成绩得过满分(100分)的课程的课程号、名称和学分
(3)检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业
(4)检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业
下列关于新表的设计中,最合理的设计是
A.增加两个表:学生一选课表(学号、课程号),教师一任课表(教师号、课程号)
B.增加一个表:学生一选课一教师表(学号、课程号、教师号)
C.增加一个表:学生一选课一教师表(学号、学生名、课程号、课程名、教师号、教师名)
D.增加两个表:学生一选课表(学号、课程号、课程名),教师一任课表(教师号、课程号、课程名)
SC(学号,课程号,成绩)
C(课程号,课程名,教师名)
试用SQL查询语句表达下列对教学数据库中的三个基本表S、SC、C的查询:
(1)统计有学生选修的课程门数.
(2)求选修C4课程的学生的平均年龄.
(3)求王平老师所授课程的每门课程的学生平均成绩.
(4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数.
(5)查询姓名以WANG开头的所有学生的姓名和年龄.
(1)检索没有获得奖学金、同时至少有一门课程成绩在 95 分以上的学生信息,包括学号、姓名和专业
(2)检索没有任何一门课程成绩在 80 分以下的所有学生的信息,包括学号、姓名和专业
(3)定义学生成绩得过满分(100 分)的课程视图 AAA,包括课程号、名称和学分
S(S#,SNAME,AGE,SEX):S表示学生,各属性依次为:学号、姓名、年龄、性别
SC(S#,C#,GRADE):SC表示成绩,个属性依次为:学号、课程号、成绩
C(C#,CNAME,TEACHER)C表示课程,个属性依次为:课程号、课程名、教师
试用SQL语句完成下列查询:
(1)检索年龄大于22岁的男学生的学号和姓名
(2)检索至少选修王老师所授课程中一门课程的女学生姓名
(3)检索至少选修两门课程的学生学号
(4)检索选修课程包含王老师所授课程的学生学号
学生(学号,姓名,性别,专业,奖学金)
课程(课程号,名称,学分)
学习(学号,课程号,分数)
用关系代数表达式实现1-2题:
(1)检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数。
(2)检索不学课程号为“C135”课程的学生信息,包括学号,姓名和专业;(20分)
(1)请指出此关系模式的候选键。
(2)写出该关系模式的函数依赖集。
(3)该关系模式属于第几范式?请简单说明理由。
(4)若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后每个关系模式的主键和外键。