正大考试
2020-2021-1
2019级计算机科学与技术专业 数据库原理与应用期末考试模拟试卷
考试要求
- 下载考试客户端,登录考试系统,输入学号、姓名,一定确保正确。
- 一定先做客观题,提交后,再做主观题。
- 主观题答题要求:编写项目,完成下列功能,并在考试系统中按要求提交答案代码及截图文件,截图为一定存为JPG格式。
一、 客观题见考试系统(1*10)
二、 应用题(90分)
说明:根据教师授课情况建立数据库。教师表记录所有教师的基本信息,课程表记录每门课程的基本情况,每位教师可以教授多门课程,每个课程可以有多名授课教师。根据题目要求写出对应的SQL命令,并截图。
1.新建用户,用户名为你的姓名(例如:zhangsan),密码为123。(4分)
2.创建数据库jxgl,使新建用户此数据库上拥有建表、建视图、建触发器、建存储过程等所有权限。(4分)
3.利用新建用户连接数据库(如:zhangsan_conn),并在新用户模式下,按照要求及说明建立下列所示的表。(4*3分)。
t_teacher(教师表)
字段 类型 说明
name varchar(12) 姓名(非空)
tea_no varchar(4) 教师编号,主键
sex varchar(3) 性别:男/女
t_birth date 出生日期
t_course(课程表)
字段 类型 说明
course_no varchar(6) 课程编号(主键)
course_name varchar(50) 课程名称(唯一)
course_class int(2) 1:必修;2:选修
t_teacher_course(任课表)
字段 类型 说明
tea_no varchar(4) 教师编号(外键)
course_no varchar(6) 课程编号
class_hour int(2) 课时数(默认32学时)
添加测试数据:
教师表测试数据:
begin
insert into t_teacher values(‘李立’,‘t001’,‘男’,’5-9月-88 ‘);
insert into t_teacher values(‘张山’,‘t002’,‘男’,‘5-3月-81’);
insert into t_teacher values(‘章明明’,‘t003’,‘女’,‘12-5月-65’);
insert into t_teacher values(‘王静一’,‘t004’,‘女’,‘25-9月-85’);
insert into t_teacher values(‘刘青’,‘t005’,‘男’,‘15-3月-75’);
insert into t_teacher values(‘赵新’,‘t006’,‘男’,‘25-12月-78’);
insert into t_teacher values(‘吴敏’,‘t007’,‘女’,‘13-4月-64’);
end;
课程表测试数据:
begin
insert into t_course values(‘c00001’,‘数学’,1);
insert into t_course values(‘c00002’,‘语文’,1);
insert into t_course values(‘c00003’,‘自然与科学’,1);
insert into t_course values(‘c00004’,‘科学与文化’,1);
insert into t_course values(‘c00005’,‘英语’,1);
insert into t_course values(‘c00006’,‘国际象棋’,2);
insert into t_course values(‘c00007’,‘书法’,2);
end;
教师授课表测试数据:
begin
insert into t_teacher_course values(‘t001’,‘c00001’,64);
insert into t_teacher_course values(‘t001’,‘c00002’,64);
insert into t_teacher_course values(‘t001’,‘c00003’,32);
insert into t_teacher_course values(‘t002’,‘c00001’,64);
insert into t_teacher_course values(‘t002’,‘c00004’,48);
insert into t_teacher_course values(‘t003’,‘c00002’,64);
insert into t_teacher_course values(‘t003’,‘c00003’,32);
insert into t_teacher_course values(‘t004’,‘c00005’,32);
insert into t_teacher_course values(‘t005’,‘c00006’,32);
insert into t_teacher_course values(‘t007’,‘c00007’,48);
end;
4.修改任课表(t_teacher_course),为其设置主键约束,并为“任课表”的课程编号设置外键约束。(5分)
5.为“教师表”增加一个联系电话属性列,要求唯一。(5分)
- 查询课程名涉及“科学”的所有必修课程信息;(5分)
7.查询每位教师的编号及授课总学时,结果按授课学时降序排序;(5分)
-
查询年龄在50岁以上的教师姓名、编号及出生日期。(5分)
-
将“语文”课程的课时数在原有的基础上提升10%。(5分)
-
查询每门课程的课程号及该门课程的授课教师人数、授课平均课时数。(5分)
11.创建一个关于“教师授课情况”的视图,包括所有教师的姓名、编号、所授课程的课时和名称,要求视图中体现“参与授课和未授课”的所有教师情况,运行结果截图显示视图内容。(5分)
-
查询授课门数在3门(含3门)及以上的教师姓名及授课门数。(5分)
-
查询学生名以及对应的选修课程名以及授课教师名。(10分)
-
创建一个存储过程,根据教师编号,输出该教师的授课总课时。执行该存储过程(以“t005”为例,给出运行结果截图)(10分)
-
创建一个触发器,当删除课程表中的记录时,将授课信息表中对应的该门课程的相关记录一并删除。并对触发器进行验证(10分)
本文地址:https://blog.csdn.net/weixin_46487304/article/details/110954555