数据库概论试题(A)姓名:班级:学号:成绩:一、名词解释(10分)1.模式2.函数依赖3.事务4.侯选码5.实体完整性二、选择题(26分)1.单个用户使用的数据视图的描述称为【】A.外模式B.概念模式C.内模式D.存储模式2.子模式DDL用来描述【】A.数据库的总体逻辑结构B.数据库的局部逻辑结构C.数据库的物理存储结构D.数据库的概念结构3.在DBS中,DBMS和OS之间的关系是【】A.相互调用B.DBMS调用OSC.OS调用DBMSD.并发运行4.五种基本关系代数运算是【】A.∪,-,×,π和σB.∪,-,∞,π和σC.∪,∩,×,π和σD.∪,∩,∞,π和σ5.当关系R和S自然联接时,能够把R和S原该舍弃的元组放到结果关系中的操作是【】A.左外联接B.右外联接C.外部并D.外联接6.数据模型的三要素是【】:A.数据结构、数据对象、共享B.数据结构、数据操作、数据控制C.数据结构、数据操作和完整性D.数据结构、数据操作和完整性约束条件7.设关系模式R(A,B,C),F是R上成立的FD集,F={B→C},则分解ρ={AB,BC}相对于F【】A.是无损联接,也是保持FD的分解B.是无损联接,但不保持FD的分解C.不是无损联接,但保持FD的分解D.既不是无损联接,也不保持FD的分解8.储蓄所有多个储户,储户在多个储蓄所之间存款,储户与储蓄所之间的关系是【】A.1对1联系B.1对多联系C.多对多联系D.多对1联系9.在数据库设计中,将ER图转换成关系数据模型的过程属于【】A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段10.设有T1和T2两个事务,其并发操作如图,下面评价中正确的是【】A.该操作不存在问题B.该操作丢失修改C.该操作不能重复读D.该操作读“脏数据”11.如果事务T获得了数据项Q上的排它锁,则T对Q【】A.只能读不能写B.只能写不能读C.既可读又可写D.不能读不能写12.现有关系表:医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果,恢复情况)的主码是【】A.患者编号,医生编号,诊断日期B.医生编号C.诊断日期D.患者编号13索引属于【】A.模式B.外模式C.内模式D.概念模式三、填空题(10分)1.用树型结构表示实体类型及实体间联系的数据模型称为_______________。2.关系数据库的关系演算语言是以_______________为基础的DML语言。3.事务必须具有的四个性质是:原子性、一致性、_______________和持久性4.设关系模式R(A,B,C),F是R上成立的FD集,F={B→A,B→C},则分解ρ={AB,AC}丢失的FD是_______________。5.DB并发操作通常会带来三类问题,它们是丢失更新、_______________和读脏数据。6.计算机系统的安全性可以划分为:_______________、管理安全类和政策法律安全类。7.数据库保护包括:安全性保护、完整性保护、_______________和恢复。8.由于硬件故障使存储在外存上的数据部分丢失或全部丢失,这种情况称做_________故障。9.关系系统分为:表式系统、最小关系系统、___________、全关系系统。10.数据恢复要涉及的2个技术是:数据转储和___________。四、简答题(24分)1.设有关系模式R(A,B,C,D),F是R上成立的FD集,F={D→A,D→B},试写出关系模式R的候选键,并说明理由。2.设有关系R和S,其中R为参照关系,S为信赖关系。为了实现完整性约束,SQL规定可以对R的删除操作采取哪三种措施?3.什么是死锁?预防死锁的方法有哪些?T1T2①读A=100,B=5②③A+B=105,验证错读A=100A=A*2写回4.如何实现数据库设计的概念结构(E-R图)向逻辑结构转换?5.模式分解的基本原则是什么?6.简要回答数据字典包括那些内容?五、设计题(共20分)1.设有关系数据库:职工关系EMPLOYEE(职工号,职工名,街道,城市)工作关系WORKS(职工号,公司号,工资)公司关系COMPANY(公司号,公司名,城市)假设职工可在多个公司兼职,请用关系代数表达式写出至少在公司号为‘C2’和‘C5’公司兼职的职工号。2.依据第1题的关系数据库,试用SQL语句写出下列操作:将所有在“联华公司”工作的职工加薪5?。3.图书出版管理数据库中有两个基本表:图书(书号,书名,作者编号,出版社,出版日期)作者(作者编号,作者名,年龄,地址)试用SQL语句写出下列查询:检索年龄低于作者平均年龄的所有作者的作者名、书名和出版社。4.设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。试画出ER图,并注明属性和联系类型。5.学校有多名学生,财务处每年要收一次学费。为财务处收学费工作设计一个数据库,包括两个关系:学生(学号,姓名,专业,入学日期)收费(学年,学号,学费,书费,总金额)假设规定属性的类型:学费、书费、总金额为数值型数据;学号、姓名、学年、专业为字符型数据;入学日期为日期型数据。列的宽度自定义。试用SQL语句定义上述表的结构。(定义中应包括主键子句和外键子句)六、综合题(本题共10分)假设某商业集团数据库中有一关系模式R(商店编号,商品编号,数量,部门编号,负责人)如果规定:1、每个商店的每个品种商品只在一个部门销售2、每个商店的每个部门只有一个负责人3、每个商店的每个商品只有一个库存数量试回答下列问题:1、写出关系模式R的所有基本函数依赖2、找出关系R的侯选键3、关系模式R最高达到第几范式?说明具体理由。4、如果R不属于第3范式,,进行分解变成第3范式。参考答案一、名词解释(10分)1.模式:数据库中全体数据的逻辑结构和特征的描述。它仅仅涉及到型的描述,不涉及具体数值。数据库系统一般提供三级模式结构。一个关系模式可以表示为R(U,D,dom,F)五元组。2.函数依赖:若X,Y是R的两个属性集合(子集),当任何时刻R中的任意两个元组中的X属性值相同时,则它们的Y属性值也相同,则称做X函数决定Y或Y函数依赖于X,记作X→Y。3.事务:是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是不可以分割的工作单位。4.侯选码:若关系中某一属性组的值能唯一地标识一个元组,则成该属性组为侯选码。5.实体完整性:主属性不可以取空值。二、选择题(26分)1.A.外模式2.B.数据库的局部逻辑结构3.B.DBMS调用OS4.A.∪,-,×,π和σ5.D.外联接6.D.数据结构、数据操作和完整性约束条件7.A.是无损联接,也是保持FD的分解8.B.1对多联系9.B.逻辑设计阶段10.C.该操作不能重复读11.C.既可读又可写12.A.患者编号,医生编号,诊断日期三、填空题(10分)1.层次模型2.谓词演算3.持久性4.B→C5.不可复读(或不一致分析、读过时数据)6.技术安全7.并发控制8.介质故障9.关系完备的系统10.日志文件四、简答题(24分)1.设有关系模式R(A,B,C,D),F是R上成立的FD集,F={D→A,D→B},试写出,并说明理由。关系模式R的候选键(CD)(CD)可以决定所有属性2.设有关系R和S,其中R为参照关系,S为信赖关系。为了实现完整性约束,SQL规定可以对R的删除操作采取哪三种措施?(1)RESTRICT(或约束删除)(2)CASCADE(或级联删除)(3)SETNULL(或外键值置空)3.什么是死锁?预防死锁的方法有哪些?死锁(Deadlock):在同时处于等待状态的两个或多个事务中,其中的每一个在它能够进行之前,都等待着某个数据、而这个数据已被它们中的某个事务所封锁,这种状态称为死锁。例如,事务T1在对数据R1封锁后,又要求对数据R2封锁,而事务T2已获得对数据R2的封锁,又要求对数据R1封锁,这样两个事务由于都不能得到封锁而处于等待状态,发生了死锁。在数据库环境下,常用的预防方法有以下两种:①一次加锁法:一次加锁法是每个事物必须将所有要使用的数据对象全部依次加锁,并要求加锁成功,只要一个加锁不成功,表示本次加锁失败,则应该立即释放所有已加锁成功的数据对象,然后重新开始从头加锁。②顺序加锁法:顺序加锁法是预先对所有可加锁的数据对象规定一个加锁顺序,每个事务都需要按此顺序加锁,在释放时,按逆序进行。4.如何实现数据库设计的概念结构(E-R图)向逻辑结构转换?(1)一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。(2)一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。该关系的键有三种情况:①如果联系为1:1,则每个实体的键都是关系的候选键;②如果联系为1:n,则n端实体的键是关系的键;③如果联系为n:m,则各实体键的组合是关系的键。5.模式分解的基本原则是什么?保持函数依赖、具有无损连接性6.简要回答数据字典包括那些内容?包括数据项、数据结构、数据流、数据存储、处理过程5个部分五、设计题(共20分)1.设有关系数据库:职工关系EMPLOYEE(职工号,职工名,街道,城市)工作关系WORKS(职工号,公司号,工资)公司关系COMPANY(公司号,公司名,城市)假设职工可在多个公司兼职,请用关系代数表达式写出至少在公司号为‘C2’和‘C5’公司兼职的职工号。)('5'5^'2'21WORKSWORKScc2.依据第1题的关系数据库,试用SQL语句写出下列操作:将所有在“联华公司”工作的职工加薪5?。UPDATEWORKSSET工资=工资*1.05WHERE公司号IN(SELECT公司号FROMCOMPANYWHERE公司名=‘联华公司’);3.图书出版管理数据库中有两个基本表:图书(书号,书名,作者编号,出版社,出版日期)作者(作者编号,作者名,年龄,地址)试用SQL语句写出下列查询:检索年龄低于作者平均年龄的所有作者的作者名、书名和出版社。SELECT作者名,书名,出版社FROM图书,作者WHERE图书.作者编号=作者.作者编号AND年龄=(SELECTAVG(年龄)FROM作者);4.设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。试画出ER图,并注明属性和联系类型。5.学校有多名学生,财务处每年要收一次学费。为财务处收学费工作设计一个数据库,包括两个关系:学生(学号,姓名,专业,入学日期)收费(学年,学号,学费,书费,总金额)假设规定属性的类型:学费、书费、总金额为数值型数据;学号、姓名、学年、专业为字符型数据;入学日期为日期型数据。列的宽度自定义。试用SQL语句定义上述表的结构。(定义中应包括主键子句和外键子句)CREATETABLE学生(学号CHAR(8),姓名CHAR(8),专业CHAR(13),入学日期DATE,PRIMARYKEY(学号));CREATETABLE收费(学年CHAR(10),学号CHAR(8),学费NUMERIC(4),书费NUMERIC(5,2),总金额NUMERIC(7,2),PRIMARYKEY(学年,学号),FOREIGNKEY(学号)REFERENCES学生(学号));六、综合题(本题共10分)解答:1.有三个函数依赖:(商店编号,商品编号)-部门编号;(商店编号,部门编号)负责人(商店编号,商品编号)数量2、关系R的侯选键:(商店编号,商品编号)3、关系模式R最高达到2NF.理由是存在传递函数依赖。4、R分解为:(商店编号,商品编号,部门编号,数量)(商店编号,部门编号,负责人)