数据库课堂练习全(答案全)

上传人:枫** 文档编号:489569674 上传时间:2023-10-19 格式:DOC 页数:7 大小:134.01KB
返回 下载 相关 举报
数据库课堂练习全(答案全)_第1页
第1页 / 共7页
数据库课堂练习全(答案全)_第2页
第2页 / 共7页
数据库课堂练习全(答案全)_第3页
第3页 / 共7页
数据库课堂练习全(答案全)_第4页
第4页 / 共7页
数据库课堂练习全(答案全)_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《数据库课堂练习全(答案全)》由会员分享,可在线阅读,更多相关《数据库课堂练习全(答案全)(7页珍藏版)》请在金锄头文库上搜索。

1、一以下涉及的教学数据库含有4个关系,方便起见,其名称简化为T、S、C和SC教师关系 T(Tno,Tname,Title)学生关系 S(Sno,Sname,Age,Sex)课程关系 C(Cno,Cname,Tno)选课关系 SC(Sno,Cno,Score)1. 查询选修了课程号为C2课程的学生学号和姓名2. 查询至少选修了钟教授所教课程中一门课程的学生学号和姓名。3. 查询不选修C2课程的学生姓名和年龄。4. 查询选修了全部课程的学生姓名。5. 查询至少有学号为S2和S4学生选修的课程的课程号。解:1.Sno,Sname(6Cno=C2(SSC)2.Sno,Sname(6Tname=钟(SSC

2、TC)3.Sname,Age(S)Sname,Age(6Cno=C2(SSC)4.Sname(S (Sno,Cno(SC)Cno(C)5.Cno(61.Sno=S22.Sno=S4(SC*SC)二、以下涉及的教学数据库含有4个关系,方便起见,其名称简化为T、S、C和SC教师关系 T(Tno,Tname,Title)学生关系 S(Sno,Sname,Age,Sex)课程关系 C(Cno,Cname,Tno)选课关系 SC(Sno,Cno,Score)要求检索女同学选修课程的课程名和任课教师名。1. 试写出该查询的关系代数表达式cname,Tname(sex=女(SSCCT)2. 画出查询表达式的

3、语法树 3. 使用启发式优化算法,对语法树进行优化,并画出优化后的语法树三、用SQL完成下面的查询和操作1. 查询不选修C2课程的学生姓名和年龄。2. 查询至少选修课程号C2和C4的学生学号。3. 求每一教师每门课程的学生选修人数(超过30人),要求显示教师工号、课程号和学生人数。查询结果按人数升序排列,人数相同按工号升序、课程号按降序排列。4. 查询只开设一门课程的教师工号和姓名。5. 把平均成绩大于80分的男同学的学号和平均成绩存入另一个已存在的表S_Score(Sno,AVG_Score)中。解:1.不选C2的姓名和年龄 select Sname,Sage from S,SC Where

4、 s.sno=sc.sno and o not in C2;2.至少选修C2,C4的学号 select A.sno from sc as A scasB where A.sn=B.sno and A.cno=C2 and B.cno=C43.select Tno c.Cno,count(Sno) from C,SC where C.Cno=SC.Cno group by Tno, C.Cno having count(s.sno)30 order by count(s.sno), Tno,C.Cno DESC4.select Tno, Tname from T where Unique(sel

5、ect Tno from C where C.Tno=T.Tno)5.Insert into S_Score(Sno,AVG_Score) select Sno, avg(Score) from SC where Sno(select Snofrom Swhere Sex=男)group by Sno having Arg(Score)80四、设某商业集团数据库中有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。商店与商品间存在“销售”联系,每个商店可销售多种商品,每

6、种商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。1. 试画出ER图,并在图上注明属性、联系的类型。2. 将ER图转换成关系模型,并注明主键和外键。商店 商店编号 商店名 地址商品 商品号 商品名 规格 单价销售 商店编号 商品号职工 职工编号 姓名 性别 业绩五、查询计算机学生选修的所有课程名称1. 写出SQL2. 画出查询树、语法树,利用代数优化对原始语法树进行优化,画出优化语法树答:1.SQL:select cname From s,sc,c where o=o and

7、sc.sno=s.sno and sdept=计算机系2. 六、设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式记录商店里每个职工的日营业额以及职工所在的部门和经理信息。如果规定:每个职工只在一个部门工作;每个部门只有一个经理。则:1. 根据上述规定,写出模式R的基本FD和码;关系模式R(职工编号,日期,日营业额,部门名,部门经理)码:日期和职工编号2. 说明R不是2NF的理由,并把R分解成2NF模式集非主属性:部门各部分依赖于码分解:R1(职工编号,日期,日营业额) R2(职工编号,部门名,部门经理)3. 进而分解成3NF模式集R1(职工编号,日期,日营业额)R2(职工编

8、号,部门名)R3(部门名,部门经理)七、设有关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管)存储运动员比赛成绩及比赛类别、主管等信息。如果规定:每个比赛项目只属于一个比赛类别;每个比赛类别只有一个比赛主管。则:1.根据上述规定,写出模式R的基本FD和码;关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管)码:运动员编号,比赛项目2.说明R不是2NF的理由,并把R分解成2NF模式集非主属性:比赛类别部分依赖于码分解:R1(运动员编号,比赛项目,成绩) R2(比赛项目,比赛类别,比赛主管)3.进而分解成3NF模式集R1(运动员编号,比赛项目,成绩)R2(比赛项目,比赛类别)R3

9、(比赛类别,比赛主管)八、设有两个事务: T1: Read(A); T2: Read(B);Read(B); Read(A);If A=0 then B=B+1; If B=0 then A=A+1;Write (B); Write (A);给定初始值A=B=0,试给出一种这两个事务的并发执行的可串行化调度,并说明并发事务操作是否正确的基本准则是什么?解答:下面是其中可能的一种并发操作,而且是一种可串行化的调度T1T2Slock AY=A=0Unlock AXlock BX=B=0B=X+1=1写回B=1Unlock BSlock B等待等待Y=B=1Unlock BXlock A A=0 (

10、因为Y0,所以A=0) 写回A=0Unlock A并发事务操作是否正确的基本准则是并发执行是否可串行化。九、某一研究所要对科研项目进行计算机管理,该研究所有若干科研人员,每个人员有职工号、姓名、性别、出生年月、专业和研究方向等,每个科研项目有研究项目编号、项目名称、起始时间和完成时间、项目经费额、经费来源、项目负责人、参加项目研究人员、每个人员所承担的任务等信息。该研究所规定:一个科研项目可以有多名研究人员参加,一个研究人员也可以参加多个研究项目。(1)请画出此管理系统的概念模型(用ER图表示);(2)将上述ER图转换成为关系模式。解:该管理系统的概念模型如下图所示nm科研项目职工参加项目编号

11、项目名称起始时间完成时间经费额经费来源负责人职工号职工姓名性别工作任务出生年月专业研究方向(2)根据ER图向关系模型的转换规则,可以得到如下关系模式:科研项目(项目编号,项目名称,起始时间和完成时间,项目经费额,经费来源,项目负责人)职工(职工号,姓名,性别,出生年月,专业,研究方向)参加(职工号,项目编号,工作任务)十、 设某“图书读者数据库”的三个关系模式如下:图书Book:书号(Bno)、类别(Bclass)、出版社(Bpublisher)、作者(Bauthor)、书名(Bname)、定价(Bprice)、数量(Bqty)、购买日期(Bbuydate)、备注(Bremark);读者Rea

12、der:编号(Rno)、姓名(Rname)、单位(Runit)、性别(Rsex)、电话(Rtel)借阅Borrow:书号(Bno)、读者编号(Rno)、借阅日期(Borrowdate)、还书日期(Returndate)(1)写出查询请求“被数据库中所有读者借阅过的图书书号和书名”所对应的关系代数表达式;(2)写出查询请求“没有借阅过计算机类图书的所有读者号和读者名”所对应的关系代数表达式及优化后的关系代数语法树;(3)用SQL语句完成下列操作 查询所有计算机类图书的书号、书名、出版社、作者和定价; 查询借阅过计算机类图书的的读者号、姓名及单位; 查询没有借阅过任何图书的读者号、姓名和单位; 求

13、“机械工业出版社”出版的各类图书的平均定价; 新增一个读者,信息为(“R0468”,“张萍”,“外语学院”,“女”,“7874357”);十一、学生、教师和课程的关系模式STC(SNo,SN,SA,TN,CN,G),其中6个属性分别为学生的学号、姓名、年龄、教师的姓名、课程名以及学生的成绩。假设学生有重名,课程名也可能有重名。又假设每个教师只教一门课,但一门课可有几个教师开设。当某个学生选定某门课后,其上课教师就固定了。 (1)写出键码和函数依赖; (2)分解关系模式使之属于BC范式。十:答:(1)(2)(3) Select Bno,Bname,Bpublisher,Bauthor,Bpric

14、e From Book Where Bclass=计算机 Select Rno,Rname,Runit From Reader Where Rno in (Select distinct Rno From BorrowWhere Bno in (select BnoFrom BookWhere Bclass=计算机) Select Rno,Rname,Runit From Reader Where Rno not in (Select distinct RnoFrom Borrow) Select Bclass,Avg(Bprice)-BorrowReaderBookBclass=计算机Book.Bno=Borrow.Bno

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号