山东大学软件学院2023数据库系统期末回忆版

07-11 1613阅读

(总的来说,与去年相比难那么一丢丢,但还是简单。索引那里考了查询代价,虽然有点意外但还合理,只要靠前复习的充分还是信手拈来的,JDBC往年考得不多,比较简单,SQL,ER图,模式分解就没什么好说的了)

山东大学软件学院2023数据库系统期末回忆版
(图片来源网络,侵删)

一、简答题(每题4分)

1、为什么使用延迟修改的日志记录不需要记录数据的旧值?

2、说明串行调度和可串行化调度的区别。

3、写出下面SQL语句的语法树以及优化后的语法树:

instructor(ID,name,dept_name,salary)

select name
from instructor a,instructor b
where a.salary > b.salary and b.name = 'Alice'

4、主码可以为null吗,为什么?

5、R(A,B,C)上有B+树索引(A,B),先有查询条件为10

6、数据项Q的W-timestamp(Q)=R-timestamp(Q)=20,现有事务Ta和事务Tb,TS(Ta)=30,TS(Tb)=34,Tb先执行read(Q),Ta再执行Read(Q),问最后R-timestamp(Q)为多少,为什么。

二、综合题

1、教师有教工号,教师姓名和职称;学生有学生号,学生姓名,住址;项目有项目号,项目名称,项目类型,起始时间,资助额;

一个教师可以负责多个项目,一个项目只可以由一个教师负责;一个项目可以由多个教师参与;一个项目可以由多个学生参与;老师和学生都可以同时参与多个项目;学生参与项目时还需要在机房上实验。

画出ER图并转换成关系模式。

2、R(A,B,C,D,E),F{A->B,AC->D,AD->B,BD->E,AD->B}

(1)R属于3NF吗,为什么?若属于,说明理由;若不属于,分解成无损且保持依赖的3NF。

(2)R属于BCNF吗,为什么?若属于,说明理由;若不属于,分解成无损的BCNF。

3、customer(cid,cname,city,street,gender,age)

      ebook(eid,ename,price)

      cep(eid,cid,day)

其中,customer是客户,cid是客户编号,cname是客户名称,city,street是所在城市和街道,gender性别,age年龄。

ebook是电子书,eid电子书编号,ename电子书名称,price电子书价格。

cep是购买记录,day是购买时间。

(1)用SQL和关系代数表达式:30岁以上的男客户购买的电子书名称。

(2)用SQL和关系代数表达式:与数据库系统这本书相同价格的电子书。

(3)用SQL和关系代数表达式:北京客户没有购买的电子书的编号和名称。

(4)用SQL和关系代数表达式:被所有用户都购买了的电子书的编号。

(5)用SQL:购买数量最多的电子书的编号。

(6)用SQL:更新电子书的价格:如果购买数量超过10000,将价格提高10%。

三、综合题(4分)

数据库中有关系表SC(sno,cno,score)。用JDBC连接数据库并用java和SQL修改SC的内容:将成绩在70到85之间的成绩提高10%,成绩在90分以上的减少5分。

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]