数据库技术复习题4 综合题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库技术试题
四、综合题
1. 假设某商业集团数据库中有一关系模式R如下:
R (商店编号,商品编号,数量,部门编号,负责人)
如果规定:(1) 每个商店的每种商品只在一个部门销售;
(2) 每个商店的每个部门只有一个负责人;
(3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:
(1) 根据上述规定,写出关系模式R的基本函数依赖;
(2) 找出关系模式R的候选码;
(3) 试问关系模式R最高已经达到第几范式?为什么?
(4) 如果R不属于3NF,请将R分解成3NF模式集。
2. 有一学生-课程数据库,包括
学生关系stu(学号sno,姓名sname,性别sex,年龄sage,所在系sdept)、
课程关系Course(课程号cno,课程名cname,学分credit)、
选修关系sc(学号sno,课程号cno,成绩grade)。用SQL语句完成下列查询。
(1) 查询信息系(information)的全体学生的的学号、姓名、年龄。
(2) 查询选修操作系统的学生姓名、课程号和成绩。
(3) 查询学号为95001的学生2号课程的姓名和成绩。
3. 有一学生-课程数据库,包括
学生关系stu(学号sno,姓名sname,性别sex,年龄sage,所在系sdept)、
课程关系Course(课程号cno,课程名cname,学分credit)、
选修关系sc(学号sno,课程号cno,成绩grade)。用SQL语言完成下列查询。
(1) 查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列。
(2) 查询所有比“王华”年龄大的学生姓名、年龄和性别。
(3)查询选修“computer”课程的“女”学生的姓名及成绩。
4. 下表给出的关系SC为第几范式?是否存在插入、删除异常?若存在,则说明是什么情况下发生?发生的原因是什么?将它分解为高一级范式,分解后的关系能否解决操作异常问题?
5. 某医院病房计算机管理中需要如下信息:
科室:科名,科地址,科电话,医生姓名
病房:病房号,床位号,所属科室名
医生:姓名,职称,所属科室名,年龄,工作证号
病人:病历号,姓名,性别,诊断,主管医生,病房号
其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
完成如下设计:
(1) 设计该计算机管理系统的E-R图。
(2) 将该E-R图转换为关系模型结构。
(3) 指出转换结果中每个关系模式的候选码。
6. 编程实现
设有一个记录各个球队员每场比赛进球数的基本表Soccer(Fno队员编号,Fcc比赛场次,Fiq进球数,Fqd球队名,Fdz队长名),并且数据窗口已经建立完成,同时已经和相应的数据库建立了连接。在数据窗口对象上存有三个按钮,分别是插入、删除、保存,如果在插入按钮上单击鼠标则完成向基本表Soccer中插入一条记录;如果在删除按钮上单击鼠标则完成删除基本表Soccer中当前记录;如果在保存按钮上单击鼠标则完成对基本表Soccer 中所有记录的保存(包括更新的记录和没有更新过的记录)。请编写程序实现上述三个按钮的功能
7. 有关工厂生产产品的数据库,涉及如下数据:
工厂号、工厂名称、地址;
产品号、产品名称、成本;
某工厂生产某产品的数量和日期。
(1) 设计E/R图;
(2) 转换成关系模型。
8. 涉及到学生、教师和课程的关系模式STC(SNo,SN,SA,TN,CN,G),其中6个属性分别为学生的学号、姓名、年龄、教师的姓名、课程名以及学生的成绩。假设学生有重名,课程名也可能有重名。又假设每个教师只教一门课,但一门课可有几个教师开设。当某个学生选定某门课后,其上课教师就固定了。
(1) 写出键码和函数依赖;
(2) 分解关系模式使之属于BC范式。
9. 设计一个图书馆数据库,数据库中对每个借阅者存有:读者号,姓名,地址,性别,年龄,单位。对每本书存有:书号,书名,作者,出版社。对每本被借出的书存有:读者号,借出日期和应还日期。
根据上述语义要求,回答下列问题:
(1)画出E-R图;
(2)将E-R图转换为关系模式,并指出每个关系模式的主码。
10. 已知每个职工(EMP)可以参加多个项目(PROJ),每个项目可以由多名职工参加;每个项目使用多种零件(PART),每种零件只可被一个项目使用。
其中,职工有:职工号ENO,职工名EN;
零件有:零件号PNO,零件名PN;
项目有:项目号PRNO,项目名PRN;
每个项目使用某种零件有相应数量:QTY,职工都有参加项目的排名:ORDER。
(1)根据上述语义设计E-R模型,要求标注连通词,可省略属性。
(2)将E-R模型转换成关系数据模型,并指出每一个关系的主码和外码(如果存在)。
(3)写出定义参照完整性和“当某职工已参加项目时,不允许删除该职工记录”约束的SQL
子句。
11.假设某公司在多个地区设有销售部经销本公司的各种产品,每个销售部聘用多名职工,且每名职工只属于一个销售部。销售部有部门名称、地区和电话等属性,产品有产品编码、品名和单价等属性,职工有职工号、姓名和性别等属性,每个销售部销售产品有数量属性。
(1) 根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。
(2) 试将ER模型转换成关系模型,并指出每个关系模式的主键和外键。
12. 设有关系模式R(A,B,C),其函数依赖为F={A→B,B→A,A→C},请回答如下问题
(1) 指出R的所有候选键并说明原因。
(2) R最高属于第几范式?为什么?
13. 一个图书借阅数据库系统要求提供下述服务:可随时查询书库中现有书籍的名称、品种、数量与存放位置,所有各类书籍均可由书号唯一标识;可随时查询书籍借还情况。包括借书人单位、姓名、借书证号、借书日期和还书日期。约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性;当需要时,可通过数据库中保存的出版社电报编号、电话、邮编及地址等信息向有关书籍的出版社增购有关书籍。约定:一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。
(1) 根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。
(2) 将ER模型转换成关系模型,并指出每个关系模式的主键和外键。
14. 某商业集团数据库有三个实体集。一是“商品”实体集,属性有商品号、商品名、规格、单价等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“供应商”实体集,属性有供应商编号、供应商名、地址等。供应商与商品之间存在“供应”联系,每个供应商可供应多种商品,每种商品可向多个供应商订购,每个供应商供应每种商品有个月供应量;商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品可在多个商店销售,每个商店销售每种商品有个月计划数。
(1) 根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。
(2) 将ER模型转换成关系模型,并指出每个关系模式的主键和外键。
15. 为某货运公司设计车队管理系统,对车辆、司机、维修、保险、报销等信息和业务活动进行管理。现实语义为:货运公司有多个部门多个车队;每个部门可以调用多个车队,每个