四川大学数据库技术复习题 四 综合题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四、综合题
1. 假设某商业集团数据库中有一关系模式R如下:
R (商店编号,商品编号,数量,部门编号,负责人)
如果规定:(1) 每个商店的每种商品只在一个部门销售;
(2) 每个商店的每个部门只有一个负责人;
(3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:
(1) 根据上述规定,写出关系模式R的基本函数依赖;
(2) 找出关系模式R的候选码;
(3) 试问关系模式R最高已经达到第几范式?为什么?
(4) 如果R不属于3NF,请将R分解成3NF模式集。
1、(商店编号,商品编号)→部门编号;商店编号→负责人;(商店编号,商品编号)→商品库存数量
2、商店编号,商品编号;
3、1NF,存在部分函数和传递函数依赖。
4、R1(商店编号,商品编号,商品库存数量,部门编号);R2(商店编号,负责人)
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范式。
键码:{SNo,CN}和{SNo,TN}
函数依赖:SNo SN,SA (BC范式违例)
TN CN (BC范式违例)
SNo,CN TN,G
a) SNo,CN SN,SA
SNo,TN G
b) SNo,TN CN
c) SNo,TN SN,SA (a,b,c为部分依赖,可不写)
2) STC1(SNo,SN,SA)
STC2(TN,CN)
STC3(SNo,TN,G)
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. 为某货运公司设计车队管理系统,对车辆、司机、维修、保险、报销等信息和业务活动进行管理。现实语义为:货运公司有多个部门多个车队;每个部门可以调用多个车队,每个车队可以被多个部门调用;每个车队可以聘用多个司机,一个司机只能在一个车队工作;一个车队可以拥有多辆车,但每辆车只能属于一个车队;每辆车可以报销多种费用;一个保险公司可以为多个司机,多辆车保险,但每个司机,每辆车只能在一个公司保险;一个维修公司可以维修多辆车,但每辆车只能在一个维修公司维修。其中部门编号、名称、负责人等属性描述部门;车队编号、名称、地址等属性描述车队;车牌号、车型、颜色、栽重等属性描述车辆;执照号、姓名、电话、工资等属性描述司机;保险公司编号、名称、地址等属性描述保险公司;维修公司编号、名称、地址等属性描述维修公司;顺序号、费用类型、费用、日期、经手人等属性描述开销;部门调用车队有出车编号、出车日期、车程、费用、出车数目;车辆和司机参保有投保日期、保险种类、费用。
(1) 根据现实语义设计E-R模型,其中实体的属性不要求画出,联系的属性要求画出。
(2) 将E-R模型转化为关系模式,并给出各关系模式的主键和外部键。
16. 有工程和职工两个实体,工程实体有工程号、工程名、预算等属性;职工实体有职工号、姓名、性别、职务、小时工资率等属性。假设一名职工参加多个工程项目,且一个工程项目有多名职工参加;按照职工的小时工资率以及在每一项工程中完成的工时发酬金;职工的职务决定小时工资率。
(1) 根据语义设计E-R模型,要求标出实体的属性和联系方式。
(2) 将E-R模型转换成一组关系模式,并指出主码和外码。
17. 某学校有若干系,每个系有若干学生,若干课程,每个学生选修若干课程,每门课有若干学生选修,某一门课可以为不同系开设,今要建立该校学生选修课程的数据库,请你设计:
(1) 根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。
(2) 将ER模型转换成关系模型,并指出每个关系模式的主键和外键。