一.简答题(24分)
1.简述数据库系统三级模式结构是什么,有什么优点。
2.给了一个元组关系演算的表达式,让画表达式树,然后在画优化后的表达式树。sname,cname,score(σSEX=’F’(S⋈SC⋈C))
3.关系模式和关系实例的区别。
4.事务是什么,它的特性是什么。
5.判断是否是多值依赖,然后说明原因。
6.时间戳排序协议的题,让判断是否可以串行化。
二.设计题
1.某企业的人力资源管理需求如下:
企业有员工,员工需要关注的信息包括:员工号、员工姓名、性别、所在部门、出生日期、年龄、民族、亲属信息;企业有若干部门,部门需要关注的信息包括:部门编号、部门名称、部门地址;企业有若干岗位,岗位需要关注的信息包括:岗位名称、岗位职责;每个员工隶属于一个部门,一个部门有多个员工,一个部门有一个负责人;一个员工可以承担多个岗位的工作职责,一个岗位可以有多个员工承担;一个部门可以拥有多个岗位,一个岗位也可以在多个部门中存在。员工的亲属信息关注身份证号码、与员工的关系和姓名。
要求:
1、用E-R图表示上述内容。
2、将E-R图转换成相应的关系模式。
类似这个,多了一个要求,员工在食堂吃饭,有个最喜欢去的食堂
2.关系模式的判断分解
(1)判断是否是3NF,如果是 ,则说明理由,如果不是则分解
(2)判断是否是BCNF,如果是 ,则说明理由,如果不是则分解
三.
1.有关系模式S(sno,sanme,dno,sex,dorm,monitor), C(cno,cname,credit), SC(sno,cno,sore),D(dno,dname)。关系S、C、SC和D分别表示学生信息、课程信息、学生选课情况和院系信息。其属性分别表示如下:sno—学生编号,sname—学生姓名,dno—院系编号,sex—性别, dorm—宿舍, monitor—班长,cno—课程编号,cname—课程名称,credit—课程学分,score—成绩,dname—院系名称。
关系模式的实例如下:
(一)针对上述实例,给出下列表达式的结果(只写出结果即可,无需计算过程,每小题3分,共24分)
1、∏sname (sex=’M’(S) )
2、snoGcount(cno)(SC)
3、∏dname (D) - ∏dname (S ⋈ D)
4、∏cname((sno=’s1’score>60(SC)) ⋈ ©)
5、∏a.sno(a.score
7、{ t | rC (t[cname]=r[cname] r[cno]=’c1’ )}
8、{ t | rD (t[dno] = r[dno]) ┑vS (v[dno] = t[dno] ) }
(二)对于上述关系模式,用SQL完成下列操作(只写出SQL即可,不需要执行结果,每小题3分,共21分)
1、查询软件学院学生姓名,按照学生姓名降序排序。
2、查询没有选修“c2”课程的学生学号。
3、查询自己的班长住在同一个宿舍的学生学号。
4、查询获得“数据库系统”课程最高分的学生学号。
5、查询学生人数最多的院系名称。
6、查询被所有学生都选修的课程名称。
7、如果学生某门课的考试成绩低于该门课的平均成绩,将该学生的考试成绩提高5%。
题目类似这个,大部分是一样的,可能有小部分有出入。