目录
考试时间
2023.6.25
一、简答题
1.在延迟修改机制中,日志只记录新值,不记录旧值,为什么
2.“串行调度”和“可串行化调度”的区别
3.画出下列查询语句的关系代数树以及优化后的关系代数树
select name
from instructor a, instructor b
where a.salary>b.salary and b.name='Alice'
4.主码的属性可以为空值吗,为什么
5.索引(X,Y)采用B+树搜索,查找10<X<30,最坏的情况代价是多少,为什么
参考:符合查找条件的结果有n条,树的高度为h
6.数据项Q的R-timestamp和W-timestamp均为20,事务Ta的时间戳为30,Tb的时间戳为34,Tb先进行read(Q)操作,然后Ta再进行read(Q)操作,执行完这些操作后,数据项Q的R-timestamp是多少,为什么
二、综合题
(一)数据库设计
教工有教工号,教工名,职称,学生有学生号,学生名,年级,项目有项目号,项目名,起始时间,资助额。一个教工可以管理多个项目,一个项目只可以有一个教工管理;一个项目可以有多个学生和老师参加,一个学生只能参加一个项目,一个老师可以参加多个项目,学生在为项目工作时可能需要去机房做实验
要求:1.画出E-R模型图
2.根据E-R模型图写出关系模式
(二)规范化
R=(U,F),U={A,B,C,D,E},F={A→B,AC→D,BD→E,AD→B},
1.判断该关系模式是3NF的吗,如果是,说明理由;如果不是,将该关系模式分解成3NF且是无损连接和保持函数依赖的模式
2.判断该关系模式是BCNF的吗,如果是,说明理由;如果不是,分解成属于BCNF且是无损连接的模式
三、计算题
customer(cid, cname, city, street, gender, age),cid是主码
ebook(ebid, ebname, price),ebid是主码
ceb(cid, ebid),cid和ebid是主码
1.查询年龄在30岁以下的男性顾客购买的书的书名(关系代数和SQL)
2.查询与书名为“数据库系统”单价一样的书编号和书名(关系代数和SQL)
3.查询没有被所属城市是“北京”的顾客购买的书的书名(关系代数和SQL)
4.查询被所有顾客都购买的书(关系代数和SQL)
5.查询购买数量最大的书(SQL)
6.更新ebook,将购买数量超过10000的电子书的售价提高10%(SQL)
四、
SC(sno, cno, score),利用JDBC连接数据库,并用Java和SQL语句完成下列操作:
1.将70到85之间的分数提高10%(包含70和85);2.将高于90的成绩减5分(包含90)(可以用伪代码)