数据库要点和试卷_第1页
数据库要点和试卷_第2页
数据库要点和试卷_第3页
数据库要点和试卷_第4页
数据库要点和试卷_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.数据库的三级模式结构中,全局数据视图的描述称为_____模式______。2.在数据库系统中管理数据的软件称为_____DBMS______。3.当用户建立视图时,在数据字典中存储的是视图的_____定义______,而不是数据。4.数据独立性是指______物理_______和______逻辑_______独立性。5.数据模型通常由_____数据结构______、____数据操作____和完整性约束三部分组成。1.关于冗余数据的叙述中,不正确的是()。A.冗余的存在容易破坏数据库的完整性B.冗余的存在给数据库的维护增加困难C.不应该在数据库中存储任何冗余数据

D.冗余数据是指可由基本数据导出的数据2.最终用户使用的数据视图称为()A.内模式B.外模式C.概念模式 D.存储模式3.数据库设计中,用于反映企业信息需求的是()A.ER模型B.关系模型C.层次模型 D.网状模型4.数据的存储结构与数据逻辑结构之间的独立性称为数据的()A.结构独立性

B.物理独立性

C.逻辑独立性

D.分布独立性

5.SQL语言具有的功能是()A.关系规范化,数据操纵,数据控制B.数据定义,数据操纵,数据控制C.数据定义,关系规范化,数据控制D.数据定义,关系规范化,数据操纵

1.为什么视图被称为虚表?基本表与视图的区别是什么?因为数据库中只存储有关视图的定义而不存储视图所对应的数据,这些数据仍存放在导出视图的基本表中,所以视图被称为虚表。基本表是实际独立存放在数据库中的表,是实表。2.在关系数据库中能完全消除数据冗余吗?不能。要实现关系数据库中表与表之间的联系,必须通过公共属性来完成,这些公共属性可能是一个表的主键,也可能是另一个表的外键,有相应的参照完整性规则来保证表之间的联系。所以关系数据库中存在数据冗余,但能控制数据的冗余度。3.简述在SQL中,DELETE语句与DROPTABLE的区别。DELETE的作用是删除表中的元组,表的模式依然存在,而DROPTABLE是将表的结构和元组全部删除,表被删除(DROP)后就不再存在了。1.对于教学数据库的三个基本表学生S(S#,SNAME,AGE,SEX)学习SC(S#,C#,GRADE)课程C(C#,CNAME,TEACHER)试用关系代数表达式和SQL语句表示:检索WANG同学不学的课程号。πC#(C)-πC#(σSNAME='WANG'SSC)或者πC#(SC)-πC#(σSNAME='WANG'SSC)(全部课程号减去WANG同学所学的课程号)SELECTC#FROMCWHEREC#NOTIN(SELECTC#FROMSCWHERES#INSELECTS#FROMSWHERESNAME=‘WANG’)试用SQL语句完成:在基本表S中检索每一门课程成绩都大于等于80分的学生学号、姓名和性别,并把检索到的值送往另一个已存在的基本表STUDENT(S#,SNAME,SEX)。INSERTINTOSTUDENT(S#,SNAME,SEX)SELECTS#,SNAME,SEXFROMSWHERENOTEXISTS(SELECT*FROMSCWHEREGRADE<80ANDS.S#=SC.S#)试用SQL语句完成:检索选修课程包含LIU老师所授课的学生学号。SELECTDISTINCTS#FROMSCWHEREC#IN(SELECTC#FROMCWHERETEACHER='LIU'))(4)有如下关系代数表达式:πc#,CNAME(C(πS#,C#(SC))÷πS#(S))))请指出其汉语含义。汉语含义:检索全部学生都选修的课程的课程号与课程名。2.东方货运公司数据库的样本数据如下。表名称:卡车车号货运站编号类型总行程购入日期1001501159002.711/06/20001002502254523.811/08/20001003501232116.609/29/2001100450223256.901/14/2002

表名称:货运站货运站编号地址电话经理501北京市东城区花市大街111号010—67301234何东海502北京市海淀花园路101号010—64248892吴明君

表名称:型号类型汽车型号1DJS1302DLS121根据数据库的表结构和内容,求:指出每个表的主码和外码。如果没有外码,则写“无”。表名称主码外码卡车车号货运站编号,类型货运站货运站编号无型号类型无卡车表存在实体完整性和参照完整性吗?请详细说明。实体完整性:在主码车号的这列中不存在空值;参照完整性:外码“货运站编号”这列中的值都是货运站表中“货运站编号”这列中的值,外码“类型”这列中的值都是型号表中“型号”这列中的值。具体说明卡车表与运货站表之间存在着什么关系?货运站表和卡车表之间存在着一对多的关系,即每一个货运站可以有多辆车。如,样本数据中货运站501有两辆车:车号为1001和1003;货运站502有两辆车:车号为1002和1004。卡车表中包含多少个实体?卡车表中包括4个实体,即表中每个元组(行)对应一个实体,每个实体就是一辆车。3.数据模型分析,关系模型R(U,F)U=ABCDEG,F={AD→E,AC→E,CB→G,BCD→AG,BD→A,AB→G,A→C}求此模型的最小函数依赖集。最小7依赖集Fm={A→E,BC→G,BD→A,A→C}分解函数依赖的右部,F={AD→E,AC→E,BC→G,BCD→A,BCD→G,BD→A,AB→G,A→C}消去左边的冗余属性:F={A→E,A→E,BC→G,BD→A,BC→G,BD→A,AB→G,A→C}消去冗余的函数依赖:Fm={A→E,BC→G,BD→A,A→C}也可以为:Fm={A→E,AB→G,BD→A,A→C}求出关系模式的候选码。候选码:BD此关系模型最高属于哪级范式。R中每一个非主属性完全函数依赖于R的候选键BD;但C,G都传递依赖于R的候选键BD,也就是说,R满足2NF的要求,而不满足3NF的要求。此关系模型最高属于2NF。将此模型按照模式分解的要求分解为3NF。R1:U1=ABDF1={BD→A}R2:U2=BCGF2={BC→G}R3:U3=ACEF3={A→C,A→E}4.在关系模式R(U,F)中,U=ABCDEF={A→C,AC→B,B→D,C→E,EC→B}计算(EC)+第一次:(1)x(0)=φ,x(1)=EC(2)由于X(0)≠AB,置X(0)=EC;(3)检查函数依赖,置X(1)=EC∪B=ECB第二次:置X(0)=ECB,检查函数依赖,置X(1)=ECB∪D=ECBD第三次:置X(0)=ECBD,检查函数依赖,X(1)=ECBD第四次:x(0)=x(1),输出x(1)=(EC)+=ECBD5.设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。 设车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有个聘期;车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队;司机与车辆之间存在着“使用”联系,司机使用车辆有使用日期和公里数两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。N1公里数拥有使用日期车辆N1公里数拥有使用日期车辆牌照号厂家出厂日期N车队号车队车队名聘用聘期司机司机编号姓名电话1使用MN将该E-R图转换为其对应的关系模型表示的数据库逻辑结构;车队(车队号,车队名)车辆(牌照号,厂家,生产日期,车队号)司机(司机编号,姓名,电话,车队号,聘期)使用(司机编号,车辆号,使用日期,公里数)3)指出转换结果中每个关系模式的候选码。一、单项选择题得分(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,错选、多选或未选均无分。1. DB、DBMS和DBS三者之间的关系是()。A.DB包括DBMS和DBSB.DBS包括DB和DBMSC.DBMS包括DB和DBSD.不能相互包括2. 对数据库物理存储方式的描述称为()A.外模式B.内模式C.概念模式 D.逻辑模式3. 在数据库三级模式间引入二级映象的主要作用是()A.提高数据与程序的独立性 B.提高数据与程序的安全性C.保持数据与程序的一致性 D.提高数据与程序的可移植性4.视图是一个“虚表”,视图的构造基于()A.基本表B.视图C.基本表或视图 D.数据字典5. 关系代数中的π运算符对应SELECT语句中的以下哪个子句?()A.SELECTB.FROMC.WHERE D.GROUPBY6. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是() A.多对多B.一对一C.多对一D.一对多7. 如何构造出一个合适的数据逻辑结构是()主要解决的问题。 A.关系系统查询优化 B.数据字典 C.关系数据库规范化理论 D.关系数据库查询8. 将E-R模型转换成关系模型,属于数据库的()。 A.需求分析 B.概念设计C.逻辑设计 D.物理设计9. 事务日志的用途是()A.事务处理B.完整性约束C.数据恢复 D.安全性控制10.如果事务T已在数据R上加了X锁,则其他事务在数据R上()A.只可加X锁 B.只可加S锁C.可加S锁或X锁 D.不能加任何锁二、填空题得分(本大题共10小题,每小题2分,共20分)错填、不填均无分。1. 数据库的逻辑数据独立性是由映象提供的。2.关系代数中专门的关系运算包括:选择、投影、连接和_________。3. 设有学生表S(学号,姓名,班级)和学生选课表SC(学号,课程号,成绩),为维护数据一致性,表S与SC之间应满足完整性约束。4.当数据库被破坏后,如果事先保存了数据库副本和,就有可能恢复数据库。 5. 如果一个满足1NF关系的所有属性合起来组成一个关键字,则该关系最高满足的范式是(在1NF、2NF、3NF范围内)。6. 设关系模式R(A,B,C,D),函数依赖集F={AB→C,D→B},则R的候选码为。7.从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、插入异常、______________和删除异常。8. 并发控制的主要方法是机制。9. 若有关系模式R(A,B,C)和S(C,D,E),SQL语句SELECTA,DFROMR,SWHERER.C=S.CANDE='80';对应的关系代数表达式是。10. 分E-R图之间的冲突主要有属性冲突、、结构冲突三种。得分三、简答题(本大题共4小题,每小题5分,共20分)1. 说明视图与基本表的区别和联系。2. 简述事务的特性。3. 试述关系模型的参照完整性规则。4. 简述系统故障时的数据库恢复策略。得分四、设计题(本大题共5小题,每小题4分,共20分)现有关系数据库如下:学生(学号,姓名,性别,专业)课程(课程号,课程名,学分)学习(学号,课程号,分数)分别用关系代数表达式和SQL语句实现下列1—5小题(注意:每小题都要分别写出关系代数表达式和SQL语句!!!每小题关系代数表达式2分,SQL语句2分):1. 检索所有选修了课程号为“C112”的课程的学生的学号和分数;2. 检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数;3. 检索“数据库原理”课程成绩高于90分的所有学生的学号、姓名、专业和分数;4. 检索没学课程号为“C135”课程的学生信息,包括学号,姓名和专业;5. 检索至少学过课程号为“C135”和“C219”的课程的学生的信息,包括学号、姓名和专业。得分五、综合题(本大题共2小题,每小题10分,共20分)1. 现有如下关系模式:借阅(图书编号,书名,作者名,出版社,读者编号,读者姓名,借阅日期,归还日期),基本函数依赖集F={图书编号→(书名,作者名,出版社),读者编号→读者姓名,(图书编号,读者编号,借阅日期)→归还日期}(1)读者编号是候选码吗?(2分)(2)写出该关系模式的主码。(2分)(3)该关系模式中是否存在非主属性对码的部分函数依赖?如果存在,请写出一个。(2分)(4)该关系模式满足第几范式?并说明理由。(4分)某工厂生产多种产品,每种产品由不同的零件组装而成,有的零件可用在不同的产品上。产品有产品号和产品名两个属性,零件有零件号和零件名两个属性。根据语义设计E-R模型,并将E-R模型转换成关系模式,要求关系模式主码加下划线表示。(E-R模型4分,关系模型6分)参考答案与评分细则一、单项选择题(共10小题,每小题2分,共20分)题号12345678910答案BBACACCCCD二、填空题(共10小题,每小题2分,共20分)。1.外模式/模式 2.除3.__参照__ 4.日志文件_____5.__3NF_ 6._AD___7._修改异常__ 8._封锁__9.πA,D(σE='80'(RS)) 10.命名冲突三、简答题(共4小题,每小题5分,共20分)。1.答:视图是从一个或几个基本表导出的表,它与基本表不同,它是一个虚表,(2分)数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。 2.答:事务具有四个特性,即ACID特性:(1分) (1)原子性:事务中包括的所有操作要么都做,要么都不做。(1分) (2)一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态。(1分) (3)隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。(1分) (4)持续性:事务一旦提交,对数据库的改变是永久的。(1分)3.答:参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系)(2分),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)(1.5分)或者等于S中某个元组的主码值(1.5分)。4. 答:正像扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入REDO队列,同时找出故障发生时尚未完成的事务,将其事务标识记入UNDO队列(2分);对UNDO队列中的各个事务进行撤销处理(1.5分);对REDO队列中的各个事务进行重做处理。(1.5分)四、设计题(共5小题,每小题关系代数式2分,SQL语句2分,共20分)。1.SQL语句:SELECT学号,分数FROM学习WHERE课程号=’C112’(SELECT学号,分数FROM学习1分,WHERE课程号=’C112’1分)关系代数:π学号,分数(课程号=’C112’(学习))(π学号,分数1分,课程号=’C112’(学习)1分。2.SQL语句:SELECT学生.学号,姓名,课程名,分数FROM学生,学习,课程(1分)WHERE学习.学号=学生.学号AND学习.课程号=课程.课程号AND专业=’英语’(1分)关系代数:π学号,姓名,课程名,分数(π学号,姓名(专业=’英语’(学生))学习π课程号,课程名(课程))(π学号,姓名,课程名,分数1分,π学号,姓名(专业=’英语’(学生))学习π课程号,课程名(课程)1分)3.SQL语句:SELECT学生.学号,姓名,专业,分数FROM学生,学习,课程(1分)WHERE学生.学号=学习.学号AND学习.课程号=课程.课程号AND分数>90AND课程名=‘数据库原理’(1分)关系代数:π学号,姓名,专业,分数(π学号,姓名,专业(学生)(分数>90(学习))π课程号,课程名(课程名=’数据库原理’(课程)))(π学号,姓名,专业,分数1分,π学号,姓名,专业(学生)(分数>90(学习))π课程号,课程名(课程名=’数据库原理’(课程))1分)4.SQL语句:SELECT学号,姓名,专业FROM学生 WHERE学号NOTIN(1分)(SELECT学号FROM学习WHERE课程号=‘C135’)(1分)关系代数:(π学号(学生)-π学号(课程号=‘C135’(学习)))(π学号,姓名,专业(学生)(π学号(学生)-1分,π学号(课程号=‘C135’(学习)))(π学号,姓名,专业(学生)1分)5.SQL语句:SELECT学号,姓名,专业FROM学生WHERE学号IN(1分)(SELECTX1.学号FROM学习X1,学习X2WHEREX1.学号=X2.学号ANDX1.课程号=‘C135’ANDX2.课程号=‘C219’)(1分)关系代数:(π学号,课程号(学习)÷π课程号(课程号=‘C135’∨课程号=‘C219’(课程)))π学号,姓名,专业(学生)(π学号,课程号(学习)÷π课程号(课程号=‘C135’∨课程号=‘C219’(课程))1分,π学号,姓名,专业(学生)1分)五、综合题(共2小题,每小题10分,共20分)。1.答:(1)不是(2分)。(2)(图书编号,读者编号,借阅日期)(2分)(3)存在(1分)。(图书编号,读者编号,借阅日期)→书名、(图书编号,读者编号,借阅日期)→作者名、(图书编号,读者编号,借阅日期)→出版社、(图书编号,读者编号,借阅日期)→读者姓名(1分,四个函数依赖任选一个即可)(4)1NF。因为存在非主属性对码的部分函数依赖。产品零件组装m产品零件组装mn产品号产品名零件号零件名(E-R模型4分,两个实体型属性少1个扣0.5分,联系类型错扣1分)产品(产品号,产品名)零件(零件号,零件名)组装(产品号,零件号)(关系模型6分,3个关系模式各2分,主键错1、数据是数据库中存储的基本对象。2、数据库系统的三级模式结构三级模式:数据库系统的三级模式结构是指数据库系统是由外模式、模式、内模式。模式(逻辑模式):模式结构的中间层,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个模式。外模式(子模式、用户模式):是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。外模式通常是模式的子集,一个数据库有多个外模式。外模式是保证数据库安全性的一个有力措施。内模式(存储模式):是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。优点:三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。两级映像外模式/模式映像。这些映像定义通常包括在各自外模式的描述中。模式/内模式映像。模式/内模式映像是唯一的。数据模型是对现实世界数据特征的抽象。作用:用来描述数据、组织数据和对数据进行操作的。三要素:数据结构、数据操作、数据的完整性约束条件①数据结构是描述数据库的组成对象以及对象之间的联系,描述内容有与对象有关的类型、内容、性质有关的,和,与数据之间联系有关的对象。数据结构是对系统静态特性的描述。②数据操作是对数据库中各种对象(型)的实例(值)允许执行的操作集合,包括操作及有关的操作规则。主要有查询和更新两大类操作。数据结构是对系统动态特性的描述。③数据的完整性约束条件是一组完整性规则的集合。3、传统的集合运算同一关系模式(关系框架)填以不同的值所生成的诸关系称为同类关系。①并R∪S={t|t∈R∨t∈S}②差R-S≡{t|t∈R∧tS}③交R∩S≡{t∣t∈R∧t∈S}④笛卡尔积R×S≡{t|t=<tr,ts>∧tr∈R∧ts∈S}投影:πj1,j2,…,jk(R)={t|t=(tj1,tj2,…,tjk)∧(Aj1,Aj2,…,Ajk)∈R}πA(R)={t[A]|t∈R}选择:σF(R)≡{t∣t∈R∧F(t)=‘真’}连接:4、函数依赖——设R(U)是属性集U上的关系模式。X和Y是U的子集。若对于R(U)上的任意一个可能的关系r,如果r中不可能存在两个元组,它们在X上的属性值相等,而在Y上的属性值不等,则称X函数决定Y或Y函数依赖于X,记作X→Y。其中X称为这个函数依赖的决定属性组,或称为决定因素,Y称作被决定因素。若Y不函数依赖于X,记作XY。若X→Y,且Y→X,则记作X←→Y。非平凡函数依赖—设R(U)是属性集上的一个关系模式。X和Y是U的子集。如果X→Y,且YX,则称X→Y是非平凡函数依赖。平凡函数依赖——若X→Y,且YX,则称X→Y是平凡函数依赖。完全函数依赖——在R(U)中,如果X→Y,并且对于X的任何一个真子集X′,都有X′Y,则称Y对X完全函数依赖,记作:XY。部分函数依赖——若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作XY。传递函数依赖——在R(U)中,如果X→Y,Y→Z,YX,YX,则称Z传递函数依赖于X,记作XY。候选键——设K是关系模式R<U,F>中的属性或属性组合,若KU,则K为R的候选键。主键——若候选键多于一个,则选定其中的一个为主键。全键——整个属性组是键。外键——关系模式R中属性或属性组X并非R的键,但X是另一个关系模式的键,则称X是R的外部键,简称外键。1NF——如果关系模式R的所有属性都是不可分的数据项,则称R属于第一范式,记作R∈1NF。2NF——若关系模式R∈1NF,且每个非主属性都完全函数依赖于R的键,则称R∈2NF。3NF——关系模式R<U,F>中若不存在这样的键X,属性组Y及非主属性Z(ZY),使得X→Y,Y→Z成立,且YX,则称R∈3NF。4NF——关系模式R<U,F>∈1NF,如果对于R的每一个非平凡多值依赖X→→Y(YX),X都含有键,则称R<U,F>∈4NF。多值依赖——设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,且Z=U-X-Y。关系模式R(U)中多值依赖X→→Y成立,当且仅当R(U)的任一关系r,给定的一对(x,z)值,有一组Y的值,这组值仅仅决定于x值而与z值无关。事务:事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。事务和程序是两个概念,一个应用程序通常包含多个事务。在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序。事务的开始和结束可以由用户显式定义,如果用户没有显式定义,DBMS按默认规定自动划分事务(隐式定义)。在SQL中,定义事务的语句有三条,具体如下:(1)BEGINTRANSACTION:事务开始(2)COMMIT:事务提交,事务正常结束。(3)ROLLBACK:回滚,即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤销,回滚到事务开始时的状态。事务通常是以BEGINTRANSACTION开始,以COMMIT或ROLLBACK结束。事务的特性有4个特性:原子性、一致性、隔离性和持续性。这4个性质统称为事务的ACID特性。(1)原子性(Atomicity)事务中包括的诸操作要么都做,要么都不做。也就是说,事务是作为一个整体被处理,不可以被分割。事务是数据库的逻辑工作单位。(2)一致性(Consistency)事务执行的结果必须使数据库处于一个一致性状态。即:事务开始前,数据库处于一致性的状态;事务结束后,数据库必须仍处于一致性状态当数据库中只包含成功事务提交的结果时,就说数据库处于一致性状态;如果数据库系统在运行过程中发生故障,有些事务尚未完成就被迫中断,这些尚未完成的事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。(3)隔离性(Isolation)隔离性是指一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。(4)持续性(Durability)持续性也称永久性(Permanence),是指事务一旦提交,那么对数据库所做的修改将是持久的,无论发生何种操作和系统故障都不应该对其有任何影响。封锁就是事务T在对某个数据对象(如表、记录等)操作之前,先向系统发出请求,对其加锁,加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。封锁具有3个环节:第一个环节是申请加锁;第二个环节是获得锁;第三个环节是释放锁。基本的封锁类型有两种:排它锁(ExclusiveLocks,X锁)也称为独占锁或写锁;共享锁(ShareLocks,S锁)共享锁又称读锁。如果事务T对数据对象A加上共享锁(S锁),其他事务对A只能再加S锁,不能加X锁,直到事务T释放A上的S锁为止。一、单选题(共20分,每题1分)DB、DBMS和DBS三者之间的关系是()A. DB包括DBMS和DBS B. DBS包括DB和DBMSC. DBMS包括DB和DBS C. DBS与DB和DBMS无关在数据库系统中,读脏数据是指一个事务读了另一个事务()A. 未更新的数据 B. 未撤销的数据C. 未提交的数据 D. 未刷新的数据加锁协议中规定“先申请先服务”的原则,可以避免数据库系统出现()A. 活锁 B. 死锁 C. 读-写冲突 D. 写-写冲突语句DELETEFROMSC表明()A. 删除SC中的全部记录 B. 删除基本表SCC. 删除基本表SC中的列数据 D. 删除基本表SC中的部分行数据库设计阶段分为()A. 物理设计阶段、逻辑设计阶段、编程和调试阶段B. 模型设计阶段、程序设计阶段和运行阶段C. 方案设计阶段、总体设计阶段、个别设计阶段和编程阶段D. 概念设计阶段、逻辑设计阶段、物理设计阶段、实施和调试阶段关系笛卡尔积运算记号R×S表示()A. R为关系名,S为属性名 B. R和S均为属性名C. R为属性名,S为关系名 D. R和S均为关系名在DB应用中,一般一条SQL语句可产生或处理一组记录,而DB主语言语句一般一次只能处理一条记录,其协调可通过哪种技术实现()A. 指针 B. 游标 C. 数组 D. 栈下列说法中不正确的是()A. 任何一个包含两个属性的关系模式一定满足3NFB. 任何一个包含两个属性的关系模式一定满足BCNFC. 任何一个包含三个属性的关系模式一定满足3NFD. 任何一个关系模式都一定有码在下列基本表中数值5表示()CREATETABLEstudent(SnumCHAR(5)NOTNULLUNIQUE,SnameCHAR(2));A. 表中有5条记录 B. 表中有5列C. 表中字符串Snum 的长度 D. 表格的大小在视图上不能完成的操作是()A. 更新视图 B. 查询C. 在视图上定义新的基本表 D. 在视图上定义新视图在DBS中,DBMS和OS之间的关系是()A. 相互调用 B. DBMS调用OS C. OS调用DBMS D. 并发运行关系中行列次序的变换性质是()A. 行可以交换,列不可交换 B. 行不可交换,列可交换C. 行、列均不可交换 D. 行、列均可以交换单个用户使用的数据视图的描述称为()A. 外模式 B. 概念模式 C. 内模式 D. 存储模式数据库系统安排多个事务并发执行的过程称为()A. 步骤 B. 进程 C. 调度 D. 优先级SQL语言有两种使用方式,分别称为交互式和()A. 提示式SQL B. 多用户SQL C. 嵌入式SQL D. 解释式SQL以下不属于服务器端脚本语言的是()。A. JSP B. PHP C. ASP D. ADO在数据库系统中,空值是()A. 0 B. 空格 C. 空字符串 D. 不确定下列关于触发器的描述错误的是()。A. 触发器是一种实现复杂完整性约束的特殊存储过程B. 触发器必须创建在一个特定的表上C. 触发器通过EXECUTE语句调用D. 触发器中使用了两张专用的临时表inserted和deleted数据库并发操作可能带来的问题包括()A. 丢失更新 B. 数据独立性会提高C. 非法用户的使用 D. 增加数据冗余度下面不是数据库系统必须提供的数据控制功能的是()A. 安全性 B. 完整性 C. 可移植性 D. 并发控制二、填空题(16分,每空2分)C/S结构是()结构的简称。角色管理机制可以简化()的工作量。完全恢复模型是以后援副本和()为基础的恢复方法。设有3个关系模式:职工(职工号,姓名,年龄,性别)公司(公司号,名称,地址)工作(职工号,公司号,工资)在定义表结构时,用SQL子句实现下列完整性约束:(1)公司表中公司号非空且唯一()。(2)工作表中公司号的值必须是公司表中的有效公司号()。(3)职工的性别为‘男’或‘女’()。(4)女职工的年龄在18~50岁之间()。对上题中的3个关系,写出检索金山公司所有男职工的姓名和年龄的关系代数表达式()。三、简答题(14分)试述DBMS的主要功能。(4分)简述产生死锁的原因以及预防死锁的三种方法。(5分)试述事务的概念及事务的四个特性。(5分)四、设计题(50分)某医院病房计算机管理中需要如下信息:科室:科名,科地址,科电话,医生姓名病房:病房号,床位号,所属科室名医生:姓名,职称,所属科室名,年龄,工作证号病人:病历号,姓名,性别,诊断,主管医生,病房号其中,一人科室有多个病房,多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。(1)请根据上述规则设计此数据库的E-R模型,要求在E-R图中注明属性和联系的类型。(6分)(2)将E-R模型转换成关系模型,并指出每个关系模式的主码。(6分)现有一个未规范化的表,包含了项目、部件和已提供的数量信息。要求:部件号部件名现有数量项目代号项目内容项目负责人已提供数量205CAM3012AAA011020BBB0215210COG15512AAA013025CCC112530DDD1215…(1)写出基本函数依赖集,并找出候选码。(4分)(2)判断最高达到第几范式,并说明理由。(2分)(3)如果有必要,将其分解成3NF模式集。(6分)设有图书关系BOOK(BID,BNAME,QTY),属性依次是书号、书名、库存数量。规定当一批图书入库时,首先判断是否存在该书,如果存在则更改其库存数量,并通知客户最新的库存数量;否则,插入该书信息(书名暂时为空),并发出“新书入库”的提示信息。设计一个存储过程来实现此功能,该存储过程有书号(@bid)和入库数量(@s)2个参数。同时,要求设计一个SQL程序验证存储过程的作用。(10分)设有4个关系模式:供应商关系:S(SNO,SNAME,CITY),属性依次是供应商号、供应商名称和所在城市;零件关系:P(PNO,PNAME,COLOR),属性依次是零件号、零件名和颜色;工程关系:J(JNO,JNAME,CITY),属性依次是工程号、工程名和所在城市;供应关系:SPJ(SNO,PNO,JNO,QTY),属性依次是供应商号、零件号、工程号和数量。用SQL语句实现下列操作:查询P1号零件的颜色。(2分)查询S1号供应商为J1号工程提供零件的编号和供应数量,查询结果按零件号降序排列。(2分)查询由S1号供应商提供红色零件的工程号。(2分)查询与其提供零件的供应商所在城市为同一城市的工程号。(2分)统计所在地为杭州的工程数量。(2分)统计每个供应商提供的零件总数。(2分)查询比J1号工程使用的零件数量多的工程号。(2分)删除为由S1号供应商提供零件的工程信息。(2分)标准答案及评分标准一、单选题(20分)12345678910BCAADDBCCC11121314151617181920BDACCDDCAC二、填空题(16分)1客户机/服务器2授权3事务日志4(1)PRIMARYKEY(公司号)4(2)FOREIGNKEY(公司号)REFERENCES公司(公司号)4(3)CHECK(性别=‘男’OR性别=‘女’)4(4)CHECK(性别=‘女’AND年龄>=18AND年龄<=50)5π姓名,年龄(σ公司名=‘金山’^性别=‘男’(职工∞工作∞公司))三、简答题(14分)1.答:DBMS的主要功能包括:数据库的定义功能、数据库的操纵功能、数据库的运行控制功能、数据库的运行和维护功能、数据字典。(4分)。2.答:一个事务若申请锁未被批准,则需等待其它事务释放锁。当事务之间出现循环等待时,如果不加干预,则会一起等待下去,从而产生死锁。(2分)常见的预防死锁的三种方法如下:要求每一个事务必须同时封锁所要使用的全部数据。(1分)对所有数据对象规定一个封锁的次序,要求所有事务必须按照这个次序封锁数据对象。(1分)当事务申请锁未被批准时,不等待加锁而是让一些事务回滚重新执行。(1分)3.答:事务是DBMS的执行单位,它由有限的数据库操作序列组成。(1分)事务具有以下四个特性:执行的原子性。即不允许事务部分地完成。(1分)保持数据库的一致性。即事务对数据库的作用应使数据库从一个一致状态转变到另一个一致状态。(1分)作用的持久性。即一个事务成功执行后,以数据库的影响应是永久的,即使数据库故障被破坏,DBMS也应该能够恢复。(1分)彼此的隔离性。即多个事务并发执行时,应象各个事务单独执行一样,互不干扰。(1分)四、设计题(50分)1.(1)E-R图如下:(6分)床位号科电话病房号床位号科电话病房号1M科地址科名科室组成病房1M科地址科名科室组成病房111从属M入住1从属M入住MM年龄诊治1M职称姓名医生病人年龄诊治1M职称姓名医生病人工作证号性别姓名病历号工作证号性别姓名病历号(2)对应关系模型结构如下:科室(科名,科地址,科电话)(1分)病房(病房号,床位号,科名)(1分)医生(工作证号,姓名,职称,科名,年龄)(2分)病人(病历号,姓名,性别,诊断,主管医生,病房号)(2分)2.(1)FD={部件号→部件名,部件号→现有数量,项目代号→项目内容,项目代号→项目负责人,(项目代号,部件号)→已提供数量},候选码为(项目代号,部件号)。(4分)(2)存在部件名属性对候选码的部分函数依赖,,因此最高达到1NF。(2分)(3)部件(部件号,部件名,现有数量)(2分)项目(项目代号,项目内容,项目负责人)(2分)提供(项目代号,部件号,已提供数量)(2分)3.存储过程:CREATEPROCEDUREBOOK_QTY@bidINT,@sINT --(2分)AS DECLARE@bsINTIFEXISTS(SELECT*FROMBOOKWHEREBID=@bid) --(2分)BEGIN UPDATEBOOKSETQTY=QTY+@sWHEREBID=@bid --(2分)SELECT@bs=QTYFROMBOOKWHEREBID=@bid --(2分) PRINT‘库存数量’+STR(@s)ENDELSE INSERTINTOBOOK(BID,QTY)VALUES(@bid,@s) --(2分)PRINT‘新书入库’ GO4.(1)SELECTCOLORFROMPWHEREPNO=‘P1’(2分)(2)SELECTPNO,QTYFROMSPJWHEREJNO=‘J1’ANDSNO=‘S1’ORDERBYPNODESC(2分)(3)SELECTJNOFROMPJOINSPJON(P.PNO=SPJ.PNO)WHERECOLOR=‘红’ANDSNO=‘S1’(2分)(4)SELECTJ.PNOFROMJJOINSPJON(J.PNO=SPJ.PNO)JOINSON(S.SNO=SPJ.SNO)WHEREJ.CITY=S.CITY(2分)(5)SELECTCOUNT(JNO)FROMJWHERECITY=‘杭州’(2分)(6)SELECTSNO,SUM(QTY)FROMSPJGROUPBYSNO(2分)(7)SELECTJNOFROMSPJGROUPBYJNOHAVINGSUM(QTY)>(SELECTSUM(QTY)FROMSPJWHEREJNO=‘J1’)(2分)(8)DELETEFROMJWHEREJNOIN(SELECTJNOFROMSPJWHERESNO=‘S1’)(2分)一、单选题(20分,每题1分)关系数据模型的基本数据结构是()。A. 树 B. 图 C. 索引 D. 关系提供数据库定义、数据操纵、数据控制和数据库维护功能的软件称为()。A. OS B. DS C. DBMS D. DBS元数据是指()。A. 数据结构的描述 B. 数据项的描述 C. 数据的来源 D. 基本数据下面对关系中属性的描述,错误的是()。A. 属性的次序可以任意交换 B. 允许多值属性C. 属性名唯一 D. 每个属性中所有数据来自同一属性域超码、候选码和主码之间的关系是()。A. 超码候选码主码 B. 超码主码候选码C. 主码候选码超码 D. 主码超码候选码关系数据库实现数据之间联系的方法是()。A. 主码 B. 外码 C. 候选码 D. 超码如下所示关系R(A,B,C,D)中,可以作为主码的属性组是()。ABCD1211211221111212A. AB B. BC C. CD D. AD或BD设有如下所示关系R(A,B)和S(C,D,A),R的主码是A,S的主码是C、外码是A(参照R.A),则能够插入关系S的元组是()。SCDA1SCDA131242RAB142536将上题中的2个关系R和S(未插入元组前)进行R*∞S后的运算结果包含()个元组。A. 5 B. 6 C. 3 D. 2对第8题中的关系R和S,若将属性A定义为S的外码时使用了ONUPDATECASCADE短语(级联更新),将R中第一个元组的A属性值更新为4时,S中第一个元组A属性的值( )。A. 不变 B. 变为4 C. 变为NULL D. 拒绝更新,返回错误信息设有一个关系R(A,B),如果要找出B属性的最后一个字母为A,并且至少包含2个字母的查询条件子句应写成WHEREBLIKE()。A. ‘_A%’ B. ‘_A’ C. ‘_%A’ D. ‘%A’SQL中谓词EXIST可用来测试一个集合是否()。A. 有重复元组 B. 有重复列名 C. 为非空集合 D. 有空值条件子句WHERE工资>ALL(SELECT工资FROM职工WHERE部门号=1)的含义为( )。比1号部门中某个职工的工资高比1号部门中所有职工的工资都高比1号部门中所有职工的工资总和高无法比较,返回错误信息下列关于数据库系统中空值的描述错误的是()。A. 包含空值的算术表达式的运算结果为NULLB. COUNT(*)将统计包含空值的行空值就是0或者空字符串可通过ISNULL运算符测试是否为空值在视图上不能完成的操作是()。A. 更新视图 B. 查询C. 在视图上定义新的基本表 D. 在视图上定义新视图数据库设计的()阶段的主要任务是调查和分析用户的应用需要,为概念结构设计做好充分准备。A. 需求分析 B. 逻辑设计 C. 物理设计 D. 运行设计下列关于触发器的描述错误的是()。A. 触发器是一种实现复杂完整性约束的特殊存储过程B. 触发器必须创建在一个特定的表上C. 触发器通过EXECUTE语句调用D. 触发器中使用了两张专用的临时表inserted和deleted事务使数据库“从一个一致状态转变到另一个一致状态”的性质称为事务的()。A. 原子性 B. 一致性 C. 隔离性 D. 持久性下列关于封锁的描述错误的是()。封锁可以避免数据的不一致性,但可能会引起系统死锁加锁协议中规定“先申请先服务”的原则,可以避免数据库系统出现活锁封锁对象的大小称为封锁的粒度两段锁协议能够预防死锁以下不属于服务器端脚本语言的是()。A. JSP B. PHP C. ASP D. ADO二、填空题(16分,每空2分)B/S结构是()结构的简称。()管理机制可以简化授权的工作量。()是用于协调SQL的集合处理方式与单记录处理方式的机制。设有3个关系模式:职工(职工号,姓名,年龄,性别)公司(公司号,名称,地址)工作(职工号,公司号,工资)在定义表结构时,用SQL子句实现下列完整性约束:(1)职工表中职工号非空且唯一()。(2)工作表中职工号的值必须是职工表中的有效职工号()。(3)职工的工资不能低于800元()。(4)男职工的年龄在18~55岁之间()。对上题中的3个关系,写出检索金山公司所有职工的姓名和工资的关系代数表达式()。三、简答题(14分)试述文件系统的主要缺陷。(4分)简述数据库恢复的基本原理和REDO/UNDO恢复策略。(4分)设有如下两个事务:T1:读B;A=B+1;写回AT2:读A;B=A+1;写回B(1)设A、B的初值均为2,若某一并发调度的执行结果为A=3、B=3,则该调度是否正确?为什么?(3分)(2)利用封锁的方法给出一个可串行化调度,并给出执行结果。(3分)四、设计题(50分)某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每个职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。(1)请根据上述规则设计此数据库的E-R模型,要求在E-R图中注明属性和联系的类型。(6分)(2)将E-R模型转换成关系模型,并指出每个关系模式的主码。(6分)设有关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管),如果规定:每个运动员每参加一个比赛项目,只有一个成绩;每个比赛项目只属于一个比赛类别;每个比赛类别只有一个比赛主管。试完成以下题目:(1)写出关系模式R的基本函数依赖集,并找出候选码。(4分)(2)判断R最高达到第几范式,并说明理由。(2分)(3)如果有必要,将R分解成3NF模式集。(6分)设有图书关系BOOK(BID,BNAME,QTY),属性依次是书号、书名、库存数量。规定当一批图书出库时,首先判断库存数量,如果大于或等于出库数量,则执行出库操作,并通知客户库存余量;否则,不执行出库操作,并发出“库存不足”警告信息。设计一个存储过程来实现此功能,该存储过程有书号(@bid)和出库数量(@s)2个参数。同时,要求设计一个SQL程序验证存储过程的作用。(10分)设有4个关系模式:供应商关系:S(SNO,SNAME,CITY),属性依次是供应商号、供应商名称和所在城市;零件关系:P(PNO,PNAME,COLOR),属性依次是零件号、零件名和颜色;工程关系:J(JNO,JNAME,CITY),属性依次是工程号、工程名和所在城市;供应关系:SPJ(SNO,PNO,JNO,QTY),属性依次是供应商号、零件号、工程号和数量。用SQL语句实现下列

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论