数据系统概论复习题及答案.pdf
复习题一一、单项选择题( 130=30分)1数据库( DB ) ,数据库系统(DBS )和数据库管理系统(DBMS )之间的关系是() 。ADBS 包括 DB和 DBMS BDBMS 包括 DB和 DBS CDB包括 DBS 和 DBMS DDBS就是 DB ,也就是 DBMS 2.在数据库系统中,通常用三级模式来描述数据库,其中()是对数据全局的逻辑结构的描述。A外模式B内模式C存储模式D模式3.下面不是关系数据库基本特征的是() 。A不同的列应有不同的数据类型B不同的列应有不同的列名C 与 行的次序无关D与列的次序无关4.一个关系只有一个() 。A候选码B外码C超码D 主码5.现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是() 。A患者编号B患者姓名C患者编号和患者姓名D 医生编号和患者编号6.SQL 语言具有两种使用方式,分别称为交互式SQL 和()。A提示式 SQL B多用户 SQL C 嵌入式 SQL D解释式 SQL 7.关系代数中的联接操作是由()操作组合而成。A选择和投影B选择和笛卡尔积C投影、选择、笛卡尔积D 投影和笛卡尔积8.在视图上不能完成的操作是() 。A更新视图B查询C在视图上定义新的表D 在 视图上定义新的视图9.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体, 其中 CREATE、 DROP 、ALTER 语句是实现()功能。A数据查询B数据操纵C数据定义D数据控制10. 设关系数据库中一个表S的结构为 S (SN ,CN ,Grade) ,其中 SN为学生名, CN为课程名,二者均为字符型; Grade 为成绩,数值型,取值范围0100。若要把“张三的数据库成绩 80 分”插入 S中,则可用() 。AADD INTO S VALUES(张三,数据库,80)BINSERT INTO S VALUES (张三,数据库,80)CADD INTO S VALUES(张三,数据库,80)D INSERT INTO S VALUES (张三,数据库,80)11. 以下有关视图查询的叙述中正确的是() 。A首先查询出视图所包含的数据,再对视图进行查询B 直接对数据库存储的视图数据进行查询C将对视图的查询转换为对相关基本表的查询D 不能对基本表和视图进行连表操作12. 以下有关 UNIQUE 约束的叙述中不正确的是() 。AUNIQUE 约束中不允许出现空值BUNIQUE 用于保证列或列组合的唯一性C可以定义多个 UNIQUE 约束D有些系统为定义了 UNIQUE 约束的那些列建立唯一索引13. 在学生关系中,对属性“性别”规定只能为“男或“女”的这种约束属于() 。A实体完整性B参照完整性C 用户定义完整性D 条件14. 设有关系模式W (C,P,S,G ,T,R) ,其中各属性的含义是:C 表示课程, P 表示教师,S表示学生, G表示成绩, T表示时间,R表示教室, 根据语义有如下数据依赖集:D = CP, (S,C )G , (T,R )C , (T,P)R , (T,S)R,关系模式 W的一个关键字是() 。A (S,C )B (T,R)C (T,P)D (T,S)15. 关系模式 R中的属性全是主属性,则R的最高范式必定是() 。A1NF B2NF C3NF DBCNF 16. 已知关系模式 R (A,B,C,D,E)及其上的函数相关性集合FAD ,BC ,EA ,该关系模式的候选关键字是() 。AAB BBE C CD DDE 17. 设 U是所有属性的集合, X、Y、Z 都是 U的子集,且 ZUXY。下面关于多值依赖的叙述中,不正确的是() 。A若 XY,则 XZ B若 XY,则 XY C若 XY,且 YY,则 XYD若 Z,则 XY 18. 数据库中的冗余数据是指可()的数据。A容易产生错误B容易产生冲突C无关紧要D 由基本数据导出19. 数据库设计中, 用 ER图描述信息结构但不涉及信息在计算机中的表示,这是数据库设计的() 。A需求分析阶段B逻辑设计阶段C概念设计阶段D物理设计阶段20. 在 ER模型中,如果有 3 个不同的实体集, 3 个 M :N联系,根据 ER模型转换为关系模型的规则,转换为关系的数目是() 。A4 B5 C 6 D7 21. 当局部 E-R图合并成全局 E-R图时可能出现冲突,不属于合并冲突的是()。A属性冲突B语法冲突C结构冲突D命名冲突22. 下面四个关系表达式是等价的,试判别它们的执行效率() 。AE3最快BE2最快CE4最快DE1最快23. 一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是() 。A原子性B一致性C独立性D持久性24. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为() 。A介质故障B运行故障C系统故障D事务故障25. 解决并发操作带来的数据不一致问题普遍采用()技术。A封锁B存取控制C恢复D 协商26. 下列不属于并发操作带来的问题是() 。A丢失修改B不可重复读C 死锁D脏读27. 事务 T 在修改数据 R之前必须先对其加 X锁, 直到事务结束才释放, 这是 () 。A一级封锁协议B二级封锁协议C三级封锁协议D零级封锁协议28. 如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是() 。A一个是 DELETE ,一个是 SELECT B一个是 SELECT ,一个是 DELETE C两个都是 UPDATE D两个都是 SELECT 29. 在数据库系统中,死锁属于() 。A系统故障B事务故障C介质故障D程序故障30. 以下()不属于实现数据库系统安全性的主要技术和方法。A存取控制技术B视图技术C 审计技术D 出 入机房登记和加锁二、填空题( 110=10分)1.设关系 R 和S的属性个数分别为 m 和n,公共属性个数为 t ,则(RS) 操作结果的属性个数为()2.在 SELECT 命令中进行查询,若希望查询的结果不出现重复元组,应在SELECT 语句中使用()保留字。3.对由SELECT FROMWHEREGROUPORDER组成的 SQL 语句,其在被 DBMS 处理时,最先执行的子句是()。4.关系模型中的完整性可以有实体完整性、()和用户定义的完整性三种。5.SQL语言的 GRANT 和 REVOVE 语句主要是用来维护数据库的() 。6.在部分匹配查询中,通配符“_”代表一个字符,代表多个(包括0 个)字符的通配符是() 。7.从关系规范化理论的角度讲, 一个只满足 1NF 的关系可能存在的四个问题是数据冗余大、()、插入异常和删除异常。8.设一个关系为 R(A,B,C,D,E,F,G),它的最小函数依赖集为FD=A B,A C ,D E,D F ,则该关系的候选码为() 。9.数据库设计可划分为六个阶段,每个阶段都有自己的设计内容,“为哪些关系,在哪些属性上、建什么样的索引”这一设计内容应该属于()设计阶段。10. 数据库恢复的最常用技术是数据转储和() 。三、根据题目要求分别用关系代数和SQL语句完成下列功能( 38=24分)设有关系 S、SC 、C,试用关系代数完成下列操作。S(S#, Sname, Age, Sex) 例:( 001, 张三 , 23, 男)SC(S#, C#, Grade) 例:( 003, C1, 83)C(C#, Cname, Teacher) 例:( C1, 数据库系统概论, 李四 )(1)检索年龄大于21 的男生的学号和姓名。(2)检索选修了“赵六”老师所授课程之一的学生学号。(3)找出“程序设计”课程成绩在90 分以上的学生姓名。(4)检索选修课程号为C1或 C2的学生学号。四、简答题( 35=15分)1.什么叫数据与程序的逻辑独立性? 2.数据库的完整性概念与数据库的安全性概念有什么区别和联系?3.试述数据库的逻辑结构设计的设计步骤。4.登记日志文件时为什么必须先写日志文件,后写数据库?5.试述两段锁协议的概念。五、应用题( 11+10=21分)1设某商业集团数据库中有三个实体集。第一个是“公司”实体集,属性有公司编号、公司名称和地址等;第二个是“仓库”实体集,属性有仓库编号、仓库名称和地址等;第三个是“职工”实体集,属性有职工编号、姓名和性别等。公司和仓库之间存在“隶属”联系,每个公司管辖若干个仓库, 每个仓库只能由一个公司管辖; 仓库与职工之间存在 “聘用”联系,每个仓库可以聘用多个职工,每一个职工只能在一个仓库工作,仓库聘用职工有聘用期和工资。根据上述实际情况,试画出对应的E-R图,并在图上注明属性和联系类型。2设有关系模式:R(公司名称 CNAME,所在城市 CITY,零件名 PART ,零件颜色 COLOR,零件数量 QUANTITY ,邮编POSTCODE)。如果规定每个公司只在一个城市(即没有分公司),每个城市都有一个邮编,每个公司可生产多种零件 , 不同公司可生产同种零件,每种零件具有相同颜色,每个公司都要生产不同数量的各种零件。(1)写出关系模式 R的函数依赖集合与主码。(3分)(2)说明 R不是2NF模式的理由,并把 R分解成 2NF模式集。( 3.5 分)(3)说明 R 不是 3NF 模式的理由,进而把R 分解为 3NF 模式集。( 3.5 分)答案一、单项选择题( 130=30分)15 ADADA 610 CBCCD 1115 CACDC 1620 BCDCC 2125 BCAAA 2630 CADBD 二、填空题( 110=10分)1m + n t 2DISTINCT 3FROM 4参照完整性5 安 全性6% 7修改异常(更新异常)8ADG (A,D,G )9物理10登记日志文件(存储日志)三、根据题目要求分别用关系代数和SQL语句完成下列功能( 38=24分)(1)SMSexAgeSnameS21,#SELECT S#, Sname FROM S WHERE Age 21 AND Sex = M ; (2)#CSTeacherSC赵六SELECT DISTINCT S# FROM SC, C WHERE SC.C# = C.C# AND C.Teacher = 赵六;OR SELECT DISTINCT S# FROM SC WHERE C# IN (SELECT C# FROM C WHERE Teacher = 赵六); (3)C90程序设计CnameScoreSnameSCSSELECT Sname FROM S, SC, C WHERE S.S# = SC.S# AND SC.C# = C.C# AND SC.Grade 90 AND Cname = 程序设计 ; (4)#1#2SCCCCSCSELECT S# FROM SC WHERE C# = C1 OR C# = C2 ; 下面的答案正确但没必要这么麻烦。SELECT S# FROM SC X WHERE NOT EXISTS (SELECT * FROM SC Y WHERE (Y.C# = C1 OR Y.C# = C2 ) AND NOT EXISTS (SELECT * FROM SCZ WHERE X.S# = Z.S# AND Y.C# = Z.C#); 四、简答题( 35=15分)当需要改变模式时 (例如增加新的关系、新的属性、改变属性的数据类型、改变数据间的联系等 ),由数据库管理员对各个外模式模式的映象作相应改变,而使外模式保持不变,从而不必修改或重写应用程序改。(2)而应用程序是依据数据的外模式编写的,保证了数据与程序的逻辑独立性。 (1)简称数据的逻辑独立性。数据的完整性和安全性是两个不同概念。 (1)数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据;防范对象:不合语义的、不正确的数据。(1)数据的安全性是为了保护数据库防止恶意的破坏和非法的存取;防范对象:非法用户和非法操作。(1)设计步骤为:a)将概念结构转化为一般的关系、网状、层次模型;(1)b)将转化来的关系、网状、层次模型向特定DBMS 支持下的数据模型转换; (1)c)对数据模型进行优化。(1)把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。(1)如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。(1)如果先写日志,但没有修改数据库,在恢复时只不过是多执行一次UNDO 操作,并不会影响数据库的正确性。 (1)所以一定要先写日志文件,即首先把日志记录写到日志文件中,然后写数据库的修改。两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁。(1)在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁;(1)在释放一个封锁之后,事务不再申请和获得任何其他封锁。(1)五、应用题( 11+10=21分)1实体3分,属性 3分,联系 2分,对应关系 2分,联系属性 1分2(1)每个函数依赖 0.5 分,候选码 1分CNAME-CITY PART-COLOR CITY-POSTCODE CNAME, PART-QUANTITY 候选码: CNAME, PART (2)理由 2 分,每个模式 0.5 分存在着非主属性 COLOR,CITY对候选码 CNAME, PART 的部分函数依赖CCP(CNAME, CITY, POSTCODE) PC(PART, COLOR) CPQ(CNAME, PART, QUANTITY) (3)理由 1.5 分,每个模式 0.5 分存在着非主属性 POSTCODE对候选码 CNAME 的传递函数依赖CC(CNAME, CITY) CP(CITY, POSTCODE) PC(PART, COLOR) CPQ(CNAME, PART, QUANTITY) 复习题(二)一、单项选择题( 130=30 分)1.下列四项中,不属于数据库系统特点的是() 。A数据共享B数据完整性C数据冗余度高D数据独立性高2.在数据库系统中,通常用三级模式来描述数据库,其中()描述了数据的物理结构。A外模式B内模式C存储模式D概念模式3.一个关系数据库文件中的各条记录()。n 1 公司编号公司名称地址公司仓库编号仓库名称地址仓库职工编号姓名性别职工隶属n 1 聘用聘用期工资A前后顺序不能任意颠倒,一定要按照输入的顺序排列B前后顺序可以任意颠倒,不影响数据库中的数据关系C前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同D前后顺序不能任意颠倒,一定要按照关键字段值的顺序排列4.一个关系只有一个() 。A超码B主码C 候选码D外码5.现有如下关系:职员(职员编号,职员姓名,性别,出生日期,所在公司)参加项目(职员编号,职员姓名,项目编号,项目名称,参加项目日期)其中,参加项目关系中的外码是() 。A职员编号B项目编号C职员编号和项目编号D 职员姓名和职员编号6.关系代数运算是以()为基础的运算。A关系运算B谓词演算C集合运算D代数运算7.假设有关系 R和S,在下列的关系运算中, ()运算不要求: “R 和S 具有相同的元数,且它们的对应属性的数据类型也相同” 。ARSBRS C RS DRS 8.若要删除数据库中已经存在的表S,可用() 。ADELETE TABLE S BDELETE S CDROP TABLE S DDROP S 9.SQL 语言集数据查询、数据操纵、数据定义和数据控制功能于一体, 其中, CREATE 、 DROP 、ALTER 语句是实现哪种功能() 。A数据定义B数据查询C数据操纵D数据控制10. 设关系数据库中一个表 S的结构为: S(SN ,CN ,grade) ,其中 SN为学生名, CN为课程名,二者均为字符型; grade为成绩,数值型,取值范围0100。若要修改王五的数据库成绩为 85分,则可用() 。AUPDATE S SET grade85 WHERE SN 王五 AND CN 数据库 BUPDATE S SET grade85 WHERE SN 王五 AND CN 数据库 CUPDATE grade 85 WHERE SN 王五 AND CN 数据库 DUPDATE grade 85 WHERE SN 王五 AND CN 数据库 11. 以下有关视图查询的叙述中正确的是()。A首先查询出视图所包含的数据,再对视图进行查询B 直接对数据库存储的视图数据进行查询C将对视图的查询转换为对相关基本表的查询D不能对基本表和视图进行连表操作12. 以下有关空值的叙述中不正确的是()。A用=NULL 查询指定列为空值的记录B 包含空值的表达式其计算结果为空值C聚集函数通常忽略空值D空值表示未知13. 在关系数据库中,要求基本关系中所有的主属性都不能有空值,其遵守的约束规则是() 。A数据依赖完整性规则B用户定义完整性规则C 实体完整性规则D域完整性规则14. 设有关系模式 W(C,P,S,G) ,其中各属性的含义是: C表示课程, P表示教师, S表示学生, G表示成绩,根据语义有如下数据依赖集:D = C P, (S,C)G ,若将关系模式 W的规范化程序最高达到() 。A1NF B2NF C 3NF DBCNF15. 如果AB ,那么属性 A和属性 B的联系是() 。A一对多B多对一C多对多D以上都不是16. 学生表(id,name,sex,age,depart_id,depart_name) ,存在函数依赖是 id(name,sex ,age,depart_id);dept_iddept_name,其满足() 。A1NF B2NF C3NF DBCNF 17. 下列关于函数依赖的叙述中,哪一条是不正确的() 。A由 XY,YZ,则 XYZ B由 XYZ,则 XY ,YZ C由 XY ,WYZ,则 XWZ D由 XY,ZY ,则 XZ 18. 数据库中的冗余数据是指可()的数据。A容易产生错误B容易产生冲突C无关紧要D 由基本数据导出19. 在数据库设计中,将 E-R 图转换成关系数据模型的过程属于() 。A需求分析阶段B逻辑设计阶段C概念设计阶段D物理设计阶段20. 在ER模型向关系模型转换时, 1: N的联系转换为关系模式时, 其关键字是() 。A1 端实体的关键字BN 端实体的关键字C 1、N 端实体的关键字组合D重新选取其它属性21. 索引的作用之一是()。A节省存储空间B便于管理C加快查询速度D 建立各数据表之间的联系22. 关系代数表达式的优化策略中,首先要做的是() 。A对文件进行预处理B尽早执行选择运算C 执行笛卡尔积运算D投影运算23. 表示两个或多个事务可以同时运行而不互相影响的是() 。A原子性B一致性C 独立性D持久性24. 后援副本的作用是() 。A保障安全性B一致性控制C故障后的恢复D数据的转储25. 解决并发操作带来的数据不一致问题普遍采用()技术。A封锁B存取控制C恢复D协商26. 下列不属于并发操作带来的问题是() 。A丢失修改B不可重复读C死锁D脏读27. 如果事务 T获得了数据项 Q上的排他锁,则 T对Q() 。A只能读不能写B只能写不能读C既可读又可写D 不能读也不能写28. 如果有两个事务,同时对数据库中同一数据进行操作, 不会引起冲突的操作是 () 。A两个都是 SELECT B两个都是 UPDATE C一个是 DELETE ,一个是 SELECT D一个是 SELECT,一个是 DELETE29. 在数据库系统中,死锁属于() 。A系统故障B事务故障C介质故障D程序故障30. 以下()不属于实现数据库系统安全性的主要技术和方法。A存取控制技术B视图技术C出入机房登记和加锁D审计技术二、填空题( 110=10 分)11. 关系操作的特点是()操作。12. 关系代数中的连接运算可以由()和选择两种运算来完成。13. 在部分匹配查询中,通配符“_”代表一个字符, “ ” 代表() 。14. 在被参照关系中删除元组,一般有三种策略:()、受限删除和置空值删除。15. 数据库角色是被命名的一组与相关的权限,角色是()的集合。16. SQL中的视图提高了数据库系统的() 。17. 设一个关系为 R(A ,B,C,D,E,F),它的最小函数依赖集为 FD=A B ,A C ,D E ,D F ,则该关系的候选码为() 。18. 当将局部 E-R 图集成为全局 E-R 图时,如果同一对象在一个局部E-R 图中作为实体,而在另一个局部 E-R 图中作为属性,这种现象称为()冲突。19. 数据流程图 (DFD) 是用于描述结构化方法中()阶段的工具。20. 在数据库并发控制中,两个或更多的事务同时处于相互等待状态,称为() 。三、根据题目要求分别用关系代数和SQL语句完成下列功能( 38=24 分)学生表: Student(Sno, Sname, Ssex, Sage, Sdept) 学生选课表: SC(Sno, Cno, Grade) 课程表: Course(Cno, Cname, Cpno) 写出执行如下操作的关系代数表达式。(1) 查询选修了 3 号或 6 号课程的学生的学号。(2) 查询考试成绩有不及格的学生的学号、姓名。(3) 查询至少选修了一门其直接先行课为8 号课程的学生学号与姓名。(4) 查询选修了所有课程的学生姓名。四、简答题( 35=15 分)1 试述等值连接与自然连接的联系和区别。2 数据库的完整性概念与数据库的安全性概念有什么区别?3 什么是数据库镜像?它有什么用途?4 什么样的并发调度是正确的调度?5 数据库转储的意义是什么?五、应用题( 11+10=21分)1试设计一个图书馆数据库,此数据库中对每个借阅者保留读者记录,其中包括:读者号、姓名、地址、性别、年龄和单位。对每本书存有:书号、作者和出版社;对每本被借出的书存有借出日期和应还日期。根据上述实际情况,试画出对应的E-R 图,并在图上注明属性和联系类型。2设有关系模式: R(职工名 Ename ,职工年龄 Age,项目名 Pname ,工资 Salary ,部门名Dept,部门经理姓名 Dmanager )。如果规定没有重名的职工,每个职工可参加多个项目,每个项目有多名职工参加,各领一份工资;每个项目只属于一个部门管理;每个部门只有一名经理。(1)写出关系模式 R的函数依赖集合与关键码。(3分)(2)说明 R 不是2NF模式的理由,并把 R分解成 2NF模式集。( 3.5 分)(3)说明 R 不是 3NF 模式的理由,进而把R 分解为 3NF 模式集。( 3.5 分)答案一 单项选择题( 130=30分)15 CBBBA 610 CDCAA 1115 CACAB 1620 BBDBB 2125 CBCCA 2630 CCABC 二 填空题( 110=10分)1集合2笛卡尔积3任意多个(包括0 个)字符4级联删除5权限6安全性7AD 8结构9需求分析10死锁三根据题目要求分别用关系代数和SQL语句完成下列功能( 38=24分)(1)SCCnoCnoSno63SELECT Sno FROM SC WHERE Cno = 3 OR Cno = 6; (2),60Sno SnameGradeStudentSCSELECT Sno, Sname FROM Student, SC WHERE Student.Sno = SC.Sno AND SC.Grade Dept Dept-Dmanager Ename-Age Ename, Panme - Salary 候选码: Ename, Panme (2)理由 2 分,每个函数依赖0.5 分存在着非主属性 Dept,Age对候选码 Ename, Panme的部分函数依赖PDD(Pname, Dept, Dmanager) EA(Ename, Age) EPS(Ename, Pname, Salary) (3)理由 1.5 分,每个函数依赖0.5 分存在着非主属性 Dmanager对候选码 Pname 的传递函数依赖PD(Pname, Dept) DD(Dept, Dmanager) EA(Ename, Age) EPS(Ename, Pname, Salary) m 读者号姓名地址性别年龄单位读者出版社书号作者书借应还日期借出日期n