模拟试题1一.单项选择题(本大题共15小题,每小题2分,共30分)1.在文件系统中,所具有的数据独立性是[D]A.系统独立性B.物理独立性C.逻辑独立性D.设备独立性2.数据库系统中存放三级结构定义的DB称为[D]A.DBSB.DDC.DDLD.DBMS3.设有关系R(A,B,C)和关系S(B,C,D),那么与R⋈S等价的关系代数表达式C[]A.σ1=5(R⋈S)B.σ1=5(R×S)C.σ1=2(R⋈S)D.σ1=2(R×S)4.与域表达式{ab|(c)(R(ac)∧R(cb))}等价的关系代数表达式是[]A.π1,4(σ2=3(R×R))B.π1,3(R⋈R)C.π1,4(R⋈R)D.π1,3(R⋈S)5.设有两个关系R(A,B)和S(B,C),与下列SELECT语句SELECTA,BFROMRWHEREBNOTIN(SELECTBFROMSWHEREC='C56');等价的关系代数表达式是[A]A.πA,B(σC≠'C56'(R⋈S))B.πA,B(R⋈S)C.R-πA,B(σC='C56'(R⋈S))D.R-πA,B(σC≠'C56'(R⋈S))6.嵌入式SQL的预处理方式,是指[]A.识别出SQL语句,加上前缀标识和结束标志B.把嵌入的SQL语句处理成函数调用形式C.对源程序进行格式化处理D.把嵌入的SQL语句编译成目标程序7.设关系模式R(A,B,C,D),F是R上成立的FD集,F={B→D,AD→C},那么ρ={ABC,BCD}相对于F[]A.是无损联接分解,也是保持FD的分解B.是无损联接分解,但不保持FD的分解C.不是无损联接分解,但保持FD的分解D.既不是无损联接分解,也不保持FD的分解8.设有关系模式R(A,B,C,D),F是R上成立的FD集,F={A→B,C→D},则F+中左部为(BC)的函数依赖有[]C≠'C56'2=12=3A.2个B.4个C.8个D.16个9.有12个实体类型,并且它们之间存在着15个不同的二元联系,其中4个是1:1联系类型,5个是1:N联系类型,6个M:N联系类型,那么根据转换规则,这个ER结构转换成的关系模式有[]A.17个B.18个C.23个D.27个10.DBMS的并发控制子系统,保证了事务__________的实现[]A.原子性B.一致性C.隔离性D.持久性11.SQL中不一定能保证完整性约束彻底实现的是[]A.主键约束B.外键约束C.局部约束D.检查子句12.ORDB中,同类元素的有序集合,并且允许一个成员可多次出现,称为[]A.结构类型B.集合类型C.数组类型D.多集类型13.在ORDB中,当属性值为单值或结构值时,引用方式任和传统的关系模型一样,在层次之间加[]A.冒号“:”B.单箭头“→”C.下划线“_”D.圆点“.”14.某一种实际存在的事物具有看来好像不存在的性质,称为[]A.不存在性B.虚拟性C.无关性D.透明性15.DDBS中,全局关系与其片段之间的映象是[]A.一对一的B.一对多的C.多对一的D.多对多的二.填空题(本大题共10小题,每小题1分,共10分)16.关系模型和层次、网状模型最大差别是用___________而不是用___________导航数据。17.DBS的全局结构体现了DBS的____________结构。18.在关系代数中,交操作可由__________操作组合而成。19.SQL的SELECT语句中使用分组子句以后,SELECT子句的语义就不是投影的意思了,而是______________________。20.设关系模式R(A,B,C),F是R上成立的函数依赖集,F={A→B,B→C,C→A},那么F在模式AB上投影πAB(F)=___________。21.数据库中,悬挂元组是指___________________。22.DBD中,子模式设计是在___________阶段进行的23.封锁能避免错误的发生,但会引起问题。24.ORDB中,引用类型是指嵌套引用时,不是引用对象本身的值,而是引用___________。25.DDBS中,如果系统具有分片透明性,那么用户只要对___________就能操作了,不必了解数据的___________情况。三.简答题(本大题共10小题,每小题3分,共30分)26.“数据独立性”在文件系统阶段、数据库阶段和分布式数据库阶段中各表现为什么形式?27.设有关系R和S:RABCSABD123136135368246135369345试写出R⋈S、R⋈S的值28.设有关系R(A,B,C)和S(D,E,F),设有关系代数表达式。πA,B(R)-πA,B(σA=D∧E='E8'(R×S))试写出与上述关系代数表达式等价的元组表达式,关系逻辑规则和SQL语句。29.嵌入式SQL的预处理方式是如何实现的?这种方式有什么重要意义?30.设关系模式R(A,B,C,D,E),F是R上成立的FD集,F={AB→C,BC→A,AC→B,D→E},试写出R的候选键,并说明理由。31.逻辑设计阶段的输入和输出是什么?32.什么是“脏数据”?如何避免读取“脏数据”?33.对象联系图与ER图的主要差别是什么?34.什么是“死锁”?在系统发生死锁时,系统如何处理?35.DDB中数据分片必须遵守哪三个条件?这三个条件的目的各是为了什么?四.设计题(本大题共5小题,每小题4分,共20分)设某商业集团关于商店销售商品的数据库中有三个基本表:商店SHOP(S#,SNAME,AREA,MGR_NAME)其属性是商店编号,商店名称,区域名,经理姓名。销售SALE(S#,G#,QUANTITY)其属性是商店编号,商品编号,销售数量。商品GOODS(G#,GNAME,PRICE)其属性是商品编号,商品名称,单价。36.试写出下列查询的关系代数表达式、元组表达式和关系逻辑规则:检索销售“冰箱”的商店的编号和商店名称。37.试写出上面第36题的SELECT语句表达形式。并写出该查询的图示形式。38.试写出下列操作的SQL语句:从SALE表中,把“开开商店”中销售单价高于1000元的商品的销售元组全部删除。39.写一个断言,要求区域名为“EAST”的商店里销售商品的单价不能低于100元。40.试写出下列操作的SQL语句:统计区域名为“EAST”的所有商店销售的每一种商品的总数量和总价值。要求显示(G#,GNAME,SUM_QUANTITY,SUM_VALUE),其属性为商品编号、商品名称、销售数量、销售价值。五.综合题(本大题共2小题,每小题5分,共10分)2241.某汽车运输公司数据库中有一个记录司机运输里程的关系模式:R(司机编号,汽车牌照,行驶公里,车队编号,车队主管)此处每个汽车牌照对应一辆汽车。“行驶公里”为某司机驾驶某辆汽车行驶的总公里数。如果规定每个司机属于一个车队,每个车队只有一个主管。(1)试写出关系模式R的基本FD和关键码。(2)说明R不是2NF模式的理由,并指出数据冗余之所在。试把R分解成2NF模式集。(3)进而把R分解成3NF模式集,并说明理由。42.设某商业集团数据库中有三个实体集。一是“仓库”实体集,属性有仓库号、仓库名和地址等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“商品”实体集,属性有商品号、商品名、单价。设仓库与商品之间存在“库存”联系,每个仓库可存储若干种商品,每种商品存储在若干仓库中,每个仓库每存储一种商品有个日期及存储量;商店与商品之间存在着“销售”联系,每个商店可销售若干种商品,每种商品可在若干商店里销售,每个商店销售一种商品有月份和月销售量两个属性;仓库、商店、商品之间存在着“供应”联系,有月份和月供应量两个属性。(1)试画出ER图,并在图上注明属性、联系类型、实体标识符;(2)将ER图转换成关系模型,并说明主键和外键。(3)将ER图转换成对象联系图。(4)将ER图转换成UML的类图。模拟试题1答案一.单项选择题答案1.D2.B3.B4.A5.C6.B7.B8.C9.B10.C11.D12.C13.D14.D15.B二.填空题答案16.关键码指针17.模块功能18.差19.对每一分组执行聚合操作20.{A→B,B→A}21.破坏泛关系存在的元组22.逻辑设计23.活锁、饿死和死锁24.对象标识符25.全局关系分片和分配三.简答题答案26.答:“数据独立性”在文件系统中表现为“设备独立性”;在数据库阶段表现为“物理独立性”和“逻辑独立性”;在分布式数据库中表现为“分布透明性”。27.答:R⋈SABCDR⋈SR.AR.BCS.AS.BD13562461361355246135369836913636913536934528.答:元组表达式为:{t|(u)(v)(R(u)∧S(v)∧(u[l]=v[1]v[2]≠'E8')∧t[1]=u[1]∧t[2]=u[2])}关系逻辑规则为:W(x,y)←R(x,y,a)∧┐(x,'E8',c)SQL语句为:SELECTA,BFROMRWHEREANOTIN(SELECTDFROMSWHEREE='E8');29.答:预处理方式是先用预处理程序对源程序进行扫描,识别出SQL语句,并处理成宿主语言的函数调用形式;然后再用宿主语言的编译程序把源程序编译成目标程序。这种方法的重要意义在于不必改动宿主语言的编译程序,这样,SQL的编译程序和宿主语言的编译程序之间就可独立,互不影响。30.答:模式R有三个候选键:ABD、BCD、ACD三个。推导过程如下:①从AB→C和D→E,可推出ABD→ABCDE。②从BC→A和D→E,可推出BCD→ABCDE。③从AC→B和D→E,可推出ACD→ABCDE。31.答:逻辑设计阶段的输入信息有四种:①概念设计阶段的概念模式;②应用的处理需求;③完整性、安全性约束条件;④DBMS特性。逻辑设计阶段的输出信息主要有四种:①DBMS可处理的模式;②子模式;③应用程序设计指南;④物理设计指南。32.答:在数据库运行时,把未提交随后又被撤消的数据称为“脏数据”。为避免读取“脏数据”,事务可以对数据实行加S锁的方法,以防止其他事务对该数据进行修改。33.答:对象联系图与ER图的主要差别是对象联系图能通过“引用”类型表示嵌套、递归的数据结构,还有能表示数据结构之间的继承性(即子类和超类)。34.答:在对并发事务采用封锁机制时,有可能若干事务都处于等待状态,等待对方释放封锁,造成事务都不能继续运行下去,这种现象称系统进入死锁状态。发生死锁时,系统将抽取某个事务作牺牲品,把它撤销,释放封锁,使其它事务有可能继续运行下去。35.答:DDB中数据分片必须遵守三个条件:2=2(1)完备性条件:指全局关系中所有数据均应映射到片段中。目的是保证所有数据均在DB中存储,不会丢失数据。(2)重构条件:由各个片段可以重建全局关系。目的是可以像无损联接那样不丢失信息。(3)不相交条件:数据片段相互之间不应该重叠(主键除外)。目的是为了防止数据冗余。四.设计题答案36.解:关系代数表达式:πS#,SNAME(σGNAME='冰箱'(SHOP⋈SALE⋈GOODS))元组表达式:{t|(u)(v)(w)(SHOP(u)∧SALE(v)∧GOODS(w)∧u[1]=v[1]∧v[2]=w[1]∧w[2]='冰箱'∧t[1]=u[1]∧t[2]=u[2])}关系逻辑规则:W(u1,u2)SHOP(u1,u2,u3,u4)∧SALE(u1,v2,v3)∧GOODS(v2,'冰箱',w3)37.解:SELECT语句如下:SELECTA.S#,SNAMEFROMSHOPA,SALEB,GOODSCWHEREA.S#=B.S#ANDB.G#=C.G#ANDGNAME='冰箱';该查询语句的图示形式如下:SHOPS#SNAMEAREAMGR_NAMEP._XP.SALES#G#QUANTITYGOODSG#GNAMEPRICE_X_Y_Y冰箱38.解:DELETEFROMSALEWHERES#IN(SELECTS#FROMSHOPWHERESNAME='