数据库课后答案
- 格式:doc
- 大小:82.00 KB
- 文档页数:9
数据库第三版课后习题答案数据库第三版课后习题答案在学习数据库的过程中,课后习题是巩固知识的重要方式。
本文将为大家提供数据库第三版课后习题的答案,希望对大家的学习有所帮助。
第一章:数据库基础1. 数据库是什么?答:数据库是一个存储、管理和操作数据的集合。
它可以用来存储和检索大量数据,并提供数据的安全性和完整性。
2. 数据库管理系统(DBMS)的作用是什么?答:DBMS是一种软件,用于管理数据库。
它提供了对数据库的访问和操作,包括数据的增删改查、数据安全性和完整性的控制、数据备份和恢复等功能。
3. 数据库系统的组成部分有哪些?答:数据库系统由数据库、数据库管理系统和应用程序组成。
数据库是存储数据的仓库,数据库管理系统用于管理和操作数据库,应用程序用于访问和处理数据库中的数据。
4. 什么是关系型数据库?答:关系型数据库是一种基于关系模型的数据库。
它使用表格(称为关系)来组织和存储数据,每个表格包含行和列,行表示记录,列表示属性。
第二章:SQL基础1. SQL是什么?答:SQL(Structured Query Language)是一种用于管理关系型数据库的语言。
它可以用来创建、修改和查询数据库中的数据。
2. SQL语句分为哪几类?答:SQL语句分为数据定义语言(DDL)、数据操作语言(DML)、数据查询语言(DQL)和数据控制语言(DCL)四类。
3. 什么是DDL语句?举例说明。
答:DDL语句用于定义数据库的结构和模式,包括创建表格、修改表格结构、删除表格等。
例如,创建表格的语句如下:CREATE TABLE student (id INT PRIMARY KEY,name VARCHAR(50),age INT);4. 什么是DML语句?举例说明。
答:DML语句用于操作数据库中的数据,包括插入、更新和删除数据。
例如,插入数据的语句如下:INSERT INTO student (id, name, age) VALUES (1, 'Tom', 20);第三章:关系数据库设计1. 什么是关系数据库设计?答:关系数据库设计是指根据实际需求,设计数据库的结构和模式。
第1章思考与实践1.选择题(1) 从数据库的整体结构看,数据库系统采用的数据模型有(C )。
A.网状模型、链状模型和层次模型 B.层次模型、网状模型和环状模型C.层次模型、网状模型和关系模型 D.链状模型、关系模型和层次模型(2) 数据库系统的构成为:数据库、计算机系统、用户和( D )。
A.操作系统 B.文件系统 C.数据集合 D.数据库管理系统(3) 用二维表形式表示的数据模型是( B )。
A.层次模型 B.关系模型 C.网状模型 D.网络模型(4) 关系数据库管理系统的3种基本关系运算不包括( A )。
A.比较 B.选择 C.连接 D.投影(5) 数据库DB、数据库系统DBS和数据库管理系统DBMS之间的关系是( B )。
A.DBMS包括DB和DBS B.DBS包括DB和DBMSC.DB包括DBS和DBMS D.DB、DBS和DBMS是平等关系(6) 在关系理论中,把二维表表头中的栏目称为( D )。
A.数据项 B.元组 C.结构名 D.属性名(7) 下面有关关系数据库主要特点的叙述中,错误的是( D )。
A.关系中每个属性必须是不可分割的数据单元B.关系中每一列元素必须是类型相同的元素C.同一关系中不能有相同的字段,也不能有相同的记录D.关系的行、列次序不能任意交换,否则会影响其信息内容(8) 以一定的组织方式存储在计算机存储设备上,能为多个用户所共享的与应用程序彼此独立的相关数据的集合称为( A )。
A.数据库 B.数据库系统 C.数据库管理系统 D.数据结构(9) 设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型是( B )。
A.m∶n B.1∶m C.m∶k D.1∶1(10) 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过( B )。
A.候选键 B.主键 C.外键 D.超键2.填空题(1) 关系数据库中每个关系的形式是(主外键引用0020 )。
第1章习题参考答案1.思考题(1)什么是数据库、数据库管理系统、数据库系统?它们之间有什么联系?答:数据库是存贮在计算机内的有结构的数据集合;数据库管理系统是一个软件,用以维护数据库、接受并完成用户对数据库的一切操作;数据库系统指由硬件设备、软件系统、专业领域的数据体和管理人员构成的一个运行系统。
(2)当前,主要有哪几种新型数据库系统?它们各有什么特点?用于什么领域,试举例说明?答:主要有:分布式数据库、面向对象数据库、多媒体数据库、数据仓库技术、空间数据库。
(3)什么是数据模型?目前数据库主要有哪几种数据模型?它们各有什么特点?答:数据模型是一组描述数据库的概念。
这些概念精确地描述数据、数据之间的关系、数据的语义和完整性约束。
很多数据模型还包括一个操作集合。
这些操作用来说明对数据库的存取和更新。
数据模型应满足3方面要求:一是能真实地模拟现实世界;二是容易为人们理解;三是便于在计算机上实现。
目前在数据库领域,常用的数据模型有:层次模型、网络模型、关系模型以及最近兴起的面向对象的模型。
(4)关系数据库中选择、投影、连接运算的含义是什么?答:1)选择运算:从关系中筛选出满足给定条件的元组(记录)。
选择是从行的角度进行运算,选择出的记录是原关系的子集。
2)投影运算:从关系中指定若干个属性(字段)组成新的关系。
投影是从列的角度进行运算,得到的新关系中的字段个数往往比原关系少。
3)连接运算:将两个关系按照给定的条件横向拼接成新的关系。
连接过程是通过两个关系中公有的字段名进行的。
(5)关键字段的含义是什么?它的作用是什么?答:一个关系中可以确定一个字段为关键字段,该字段的值在各条记录中不能有相同的值。
(如:门牌号码);关键字段的作用主要是为建立多个表的关联和进行快速查询。
(6)什么是E-R图?E-R 图是由哪几种基本要素组成?这些要素如何表示?答:E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
第一章习题参考答案一、选择题1. C2. B3. D4. C5. D6. A7. A8. B9. D 10. B11. C 12. D 13. A 14. D 15. B16. C 17. D 18. A 19. D 20. A二、填空题1. 数据库系统阶段2. 关系3. 物理独立性4. 操作系统5. 数据库管理系统(DBMS)6. 一对多7. 独立性8. 完整性控制9. 逻辑独立性10. 关系模型11. 概念结构(逻辑)12. 树有向图二维表嵌套和递归13. 宿主语言(或主语言)14. 数据字典15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构第2章习题参考答案一、选择题1. A2. C3. C4. B5. B6. C7. B8. D9. C 10. A11. B 12. A 13. A 14. D 15. D二、填空题1. 选择(选取)2. 交3. 相容(或是同类关系)4. 并差笛卡尔积选择投影5. 并差交笛卡尔积6. 选择投影连接7. σf(R)8. 关系代数关系演算9. 属性10. 同质11. 参照完整性12. 系编号,系名称,电话办公地点13. 元组关系域关系14. 主键外部关系键15. R和S没有公共的属性第3章习题参考答案一、选择题1. B2. A3. C4. B5. C6. C7. B8. D9. A 10. D二、填空题结构化查询语言(Structured Query Language)数据查询、数据定义、数据操纵、数据控制外模式、模式、内模式数据库、事务日志NULL/NOT NULL、UNIQUE约束、PRIMARY KEY约束、FOREIGN KEY约束、CHECK 约束聚集索引、非聚集索引连接字段行数定义系统权限、对象权限基本表、视图12.(1)INSERT INTO S VALUES('990010','李国栋','男',19)(2)INSERT INTO S(No,Name) VALUES('990011', '王大友')(3)UPDATE S SET Name='陈平' WHERE No='990009'(4)DELETE FROM S WHERE No='990008'(5)DELETE FROM S WHERE Name LIKE '陈%'13.CHAR(8) NOT NULL14.o=o15.ALTER TABLE StudentADDSGrade CHAR(10)第4章习题参考答案一、选择题1. B2. B3. D4. B5. C6. D7. B8. D9. C 10. A二、填空题1. 超键(或超码)2. 正确完备3. 属性集X的闭包X + 函数依赖集F的闭包F +4. 平凡的函数依赖自反性5. {AD→C} φ6. 2NF 3NF BCNF7. 无损连接保持函数依赖8. AB BC BD9. B→φ B→B B→C B→BC10. B→C A→D D→C11. AB 1NF12. AD 3NF第5章习题参考答案一、选择题1. B2. B3. C4. A5. C6. D7. A8. C9. D 10. D11. B 12. B 13. A 14. D 15. A二、填空题安全性控制、完整性控制、并发性控制、数据库恢复数据对象、操作类型授权粒度、授权表中允许的登记项的范围原始数据(或明文)、不可直接识别的格式(或密文)、密文事务、原子性、一致性、隔离性、持久性丢失更新、污读、不可重读封锁、排它型封锁、共享封锁利用数据的冗余登记日志文件、数据转储事务故障、系统故障、介质故障完整性登录账号、用户账号public服务器、数据库第6章习题参考答案一、选择题1. B2. C3. C4. A5. C6. B7. C8. B9. D 10. C11. D 12. B 13. B 14. D二、填空题数据库的结构设计、数据库的行为设计新奥尔良法分析和设计阶段、实现和运行阶段需求分析概念结构设计自顶向下、自底向上属性冲突、命名冲突、结构冲突逻辑结构设计确定物理结构、评价物理结构数据库加载运行和维护物理数据字典需求分析载入第7章习题参考答案一、选择题1. B2.C3.B4.D5.A二、填空题局部变量、全局变量- -、/*……*/DECLARESQL、流程控制AFTER 触发器、INSTEAD OF 触发器插入表、删除表数据库备份、事务日志备份、差异备份、文件和文件组备份简单还原、完全还原、批日志还原硬盘、磁带、管道下面是古文鉴赏,不需要的朋友可以下载后编辑删除!!谢谢!!九歌·湘君屈原朗诵:路英君不行兮夷犹,蹇谁留兮中洲。
第一章习题一、选择题1.数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)之间的关系是(C)。
A)DB包含DBS和DBMS B)DBMS包含DBS和DBC)DBS包含DB和DBMS D)没有任何关系2.数据库系统的核心是(B)。
A)数据模型 B)数据库管理系统C)数据库 D)数据库管理员3.数据独立性是数据库技术的重要特点之一,所谓数据独立性是指(D)。
A)数据与程序独立存放B)不同的数据被存放在不同的文件中C)不同的数据只能被队友的应用程序所使用D)以上三种说法都不对4.用树形结构表示实体之间联系的模型是(C)。
A)关系模型 B)网状模型 C)层次模型 D)以上三个都是5.“商品与顾客”两个实体集之间的联系一般是(D)。
A)一对一 B)一对多 C)多对一 D)多对多6.在E-R图中,用来表示实体的图形是(A)。
A)矩形 B)椭圆形 C)菱形 D)三角形7.在数据库管理系统提供的数据语言中,负责数据的模式定义和数据的物理存取构建的是(A)。
A)数据定义语言 B)数据转换语言 C)数据操纵语言 D)数据控制语言8.数据库系统的三级模式结构中,下列不属于三级模式的是(B)。
A)内模式 B)抽象模式 C)外模式 D)概念模式9.在数据库管理系统提供的语言中,负责数据的完整性、安全性的定义与检查以及并发控制、故障恢复等功能的是(D)。
A)数据定义语言 B)数据转换语言 C)数据操纵语言 D)数据控制语言10.下面关于数据库系统叙述正确的是(B)。
A)数据库系统避免了一切冗余B)数据库系统减少了数据冗余C)数据库系统比文件能管理更多的数据D)数据库系统中数据的一致性是指数据类型的一致11.下列叙述中,错误的是(C)。
A)数据库技术的根本目标是要解决数据共享的问题B)数据库设计是指设计一个能满足用户要求,性能良好的数据库C)数据库系统中,数据的物理结构必须与逻辑结构一致D)数据库系统是一个独立的系统,但是需要操作系统的支持12.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是(D)。
数据库系统原理课后习题参考答案(总8页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第一章数据库系统概述选择题B、B、A简答题1.请简述数据,数据库,数据库管理系统,数据库系统的概念。
P27数据是描述事物的记录符号,是指用物理符号记录下来的,可以鉴别的信息。
数据库即存储数据的仓库,严格意义上是指长期存储在计算机中的有组织的、可共享的数据集合。
数据库管理系统是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。
数据库系统是指在计算机中引入数据库技术之后的系统,包括数据库、数据库管理系统及相关实用工具、应用程序、数据库管理员和用户。
2.请简述早数据库管理技术中,与人工管理、文件系统相比,数据库系统的优点。
数据共享性高数据冗余小易于保证数据一致性数据独立性高可以实施统一管理与控制减少了应用程序开发与维护的工作量3.请简述数据库系统的三级模式和两层映像的含义。
P31答:数据库的三级模式是指数据库系统是由模式、外模式和内模式三级工程的,对应了数据的三级抽象。
两层映像是指三级模式之间的映像关系,即外模式/模式映像和模式/内模式映像。
4.请简述关系模型与网状模型、层次模型的区别。
P35使用二维表结构表示实体及实体间的联系建立在严格的数学概念的基础上概念单一,统一用关系表示实体和实体之间的联系,数据结构简单清晰,用户易懂易用存取路径对用户透明,具有更高的数据独立性、更好的安全保密性。
第二章关系数据库选择题C、C、D简答题1.请简述关系数据库的基本特征。
P48答:关系数据库的基本特征是使用关系数据模型组织数据。
2.请简述什么是参照完整性约束。
P55答:参照完整性约束是指:若属性或属性组F是基本关系R的外码,与基本关系S的主码K相对应,则对于R中每个元组在F上的取值只允许有两种可能,要么是空值,要么与S中某个元组的主码值对应。
3.请简述关系规范化过程。
第一章绪论1、试述数据、数据库、数据库管理系统、数据库系统的概念。
答:描述事物的符号记录称为数据;数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库管理系统是位于用户与操作系统之间的一层数据管理软件; 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
2.使用数据库系统有什么好处?答:数据库系统使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的阶段,这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。
3.试述文件系统与数据库系统的区别和联系。
答:1)数据结构化是数据库与文件系统的根本区别。
在文件系统中,相互独立的文件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。
数据库系统实现整体数据的结构化,是数据库的主要特征之一。
2)在文件系统中,数据的最小存取单位是记录,粒度不能细到数据项。
而在数据库系统中,存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项一个记录或或一组记录。
3)文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。
而在数据库系统中数据不再针对某一应用,而是面向全组织,具有整体的结构化。
5.试述数据库系统的特点。
答:数据结构化;数据的共享性高、冗余度低、易扩充;数据独立性高;数据由DBMS统一管理和控制。
6.数据库管理系统的主要功能有哪些?答:数据定义功能、数据操纵功能、数据库的运行管理、数据库的建立和维护功能。
7.试述数据模型的概念(13页)、数据模型的作用、数据模型的三个要素。
答:数据模型(Data Model)也是一种模型,它是现实世界数据特征的抽象。
作用:在数据库中用数据模型来抽象、表示和处理现实世界中的数据和信息。
第1章数据概述一.选择题1.下列关于数据库管理系统的说法,错误的是CA.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名2.下列关于用文件管理数据的说法,错误的是DA.用文件管理数据,难以提供应用程序对数据的独立性B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序C.用文件存储数据的方式难以实现数据访问的安全控制D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率3.下列说法中,不属于数据库管理系统特征的是CA.提供了应用程序和数据的独立性B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合C.用户访问数据时,需要知道存储数据的文件的物理信息D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失5.在数据库系统中,数据库管理系统和操作系统之间的关系是DA.相互调用B.数据库管理系统调用操作系统C.操作系统调用数据库管理系统D.并发运行6.数据库系统的物理独立性是指DA.不会因为数据的变化而影响应用程序B.不会因为数据存储结构的变化而影响应用程序C.不会因为数据存储策略的变化而影响数据的存储结构D.不会因为数据逻辑结构的变化而影响应用程序7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于AA.系统软件B.工具软件C.应用软件D.数据软件8.数据库系统是由若干部分组成的。
下列不属于数据库系统组成部分的是B A.数据库B.操作系统C.应用程序D.数据库管理系统9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是DA.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件C.客户/服务器结构比文件服务器结构的网络开销小D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。
第1章1.试述数据、数据库、数据库系统、数据库管理系统的概念;答:1数据:描述事物的符号记录成为数据;数据的种类有数字、文字、图形、图像、声音、正文等;数据与其语义是不可分的;(2)数据库:数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库中的数据按照一定的数据模型组织;描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享;(3)数据库系统:数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统及其开发人具、应用系统、数据库管理员构成; (4)数据库管理系统:数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据;DBMS的主要功能包括数据定义功能、数据操作功能、数据库的建立和维护功能;6.试述数据库系统三级模式结构,这种结构的优点是什么答:数据库系统的三级模式机构由外模式、模式和内模式组成;外模式,亦称子模式或用户模式,是数据库用户包括应用程序员和最终用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示;模式亦称逻辑模式,是数据库中全体数据呃逻辑结构和特征的描述,是所有用户的公共数据视图;模式描述的是数据的全局逻辑结构;外模式涉及的是数据的内部逻辑结构,通常是模式的子集;内模式,亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述;数据库系统的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储;为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式∕模式映像和模式∕内模式映像;正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性;7.定义并解释下列术语;外模式:亦称子模式或用户模式,是数据库用户包括应用程序员和最终用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示;内模式:亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述;模式:亦称逻辑模式,是数据库中全体数据逻辑结构和特征的描述,是所有用户的公共数据视图;模式描述的是数据的全局逻辑结构;外模式涉及的是数据的内部逻辑结构,通常是模式的子集;DDL:数据库定义语言,用来定义数据库模式、外模式、内模式的语言;DML:数据操纵语言,用来对数据库中数据进行查询、插入、删除和修改的语句;8.什么叫数据与程序的物理独立性什么叫数据与程序的逻辑独立性为什么数据库系统具有数据与程序的独立性答:数据与程序的逻辑独立性:当模式改变时例如增加新的关系、新的属性、改变属性的数据类型等,由数据库管理员各个外模式∕模式的映像做相应改变,可以使外模式保持不变;应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性;数据与程序的物理独立性:当数据库的存储结构改变了,有数据库管理员对模式∕内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性;数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据具有较高的逻辑独立性和物理独立性;第2章数据模型3.试描述数据模型的三个要素;数据模型由数据结构、数据操作和完整性约束三部分组成;(1)数据结构:是所研究的对象类型的集合,是对系统静态特性的描述;(2)数据操作:是对数据库中各种对象型的实例值允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述;(3)数据的约束条件: 是一组完整性规则的集合;完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容;7.试述关系模型的概念,定义并解释以下术语;答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成;(1)关系:一个关系对应通常说法的一张表(2)关系模式:对关系的描述,一般表示为:关系名属性1,属性2,…,属性n(3)元祖:表中的一行即为一个元组(4)属性:表中的一列即为一个属性(5)码:表中的某个属性组,它可以惟一确定一个元组(6)域:属性的取值范围(7)分量:元组中的一个属性值第3章关系数据库3.定义并理解下列术语,说明它们之间的联系与区别; (1)域:域是一组具有相同数据类型的值的集合;笛卡儿积:给定一组域D1,D2,…,Dn,这些域中可以有相同的;D1,D2,…,Dn的笛卡尔积为:D1×D2×…×Dn={d1,d2,…,dn|di∈Di,i=1,2,…,n} 其中每一个元素d1,d2,…,dn叫做一个n元组或简称元组;元素中的每一个值di叫做一个分量;关系:在域D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn的子集称为关系,表示为RD1,D2,…Dn元组:关系中的每个元素是关系中的元组;属性:关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域;由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性;(2)候选码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码;主码:若一个关系有多个候选码,则选定其中一个为主码;外部码:设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外部码,简称外码;基本关系R称为参照关系,基本关系S称为被参照关系或目标关系;关系R 和S可以是相同的关系;(3)关系模式:关系的描述称为关系模式;它可以形式化地表示为RU,D,dom,F 其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,dom为属性向域的映像集合,F为属性间数据的依赖关系集合;关系:在域D1,D2,…,Dn上笛卡儿积D1×D2×…×Dn的子集称为关系,表示为RD1,D2,…Dn,关系是关系模式在某一时刻的状态或内容;关系模式是静止的、稳定的;而关系是动态的、随时间不断变化的,因为关系操作在不断更新着数据库中的数据;关系数据库:关系数据库也有型和值之分;关系数据库的型也称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式;关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就称为关系数据库;4.试述关系模型的完整性规则;在参照完整性中,为什么外部码属性的值也可以为空什么情况下才可以为空5.答:关系模型的完整性规则是对关系的某种约束条件;关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定义的完整性;其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称做事关系的两个不变性,应该由关系系统自动支持;1实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值; 2参照完整性规则:若属性或属性组F是基本关系R的外码,它与基本关系S 的主码Ks相对应基本关系R和S不一定是不同的关系,则对于R中每个元组在F上的值必须为:1或者取空值F的每个属性值均为空值2或者等于S中的某个元组的主码值;3用户定义的完整性是针对某一具体关系数据库的约束条件;它反映某一具体应用所涉及的数据必须满足的语义要求;在参照完整性中,外部码属性的值可以为空,它表示该属性的值尚未确定,但前提条件是该外部码属性不是其所在关系的主属性;例如,在下面的“学生”表中,“专业号”是一个外部码,不是学生表的主属性,可以为空,其语义是,该学生的专业尚未确定;学生学号,姓名,性别,专业号,年龄专业专业号,专业名而在下面的“选修”表中的“课程号”虽然也是一个外部码属性,但它又是“课程”表的主属性,所以不能为空,因为关系模型必须满足实体完整性;课程课程号,课程名,学分选修学号,课程号,成绩p61 5、设有一个SPJ数据库,包括S、P、J、SPJ四个关系模式:SSNO,SNAME,STATUS,CITY;PPNO,PNAME,COLOR,WEIGHT;JJNO,JNAME,CITY;SPJSNO,PNO,JNO,QTY;供应商表S由供应商代码SNO、供应商姓名SNAME、供应商状态STATUS、供应商所在城市CITY组成;零件表P由零件代码PNO、零件名PNAME、颜色COLOR、重量WEIGHT组成;工程项目表J由工程项目代码JNO、工程项目名JNAME、工程项目所在城市CITY 组成;供应情况表SPJ由供应商代码SNO、零件代码PNO、工程项目代码JNO、供应数量QTY组成,表示某供应商供应某种零件给某工程项目的数量为QTY;今有若干数据如下:S表试分别用关系代数完成如下查询:(1)求供应工程J1零件的供应商号SNO;答关系代数πSNOσJNO=’J1’SPJ(2)求供应工程J1零件P1的供应商号SNO;答关系代数πSNOσJNO=’J1’⋀PNO=’P1’SPJ(3)求供应工程J1零件为红色的供应商号SNO;答关系代数πSNOπSNO,PNOσJNO=’J1’SPJ ⋈πPNOσCOLOR=’红’P(4)求没有使用天津供应商生产的红色零件的工程号JNO;答关系代数πJNO J-πJNOπSNOσCITY=’天津’S⋈πSNO,PN0,JNO SPJπPNOσCOLOR=’红’P解析减法运算中被减的部分是使用了天津供应商生产的红色零件的所有工程号,πJ是全部工程的工程号,两者相减就是没有使用天津供应商生出的红色零件的工程号,包括没有使用任何零件的工程号;5求至少用了S1供应商所供应的全部零件的工程号JNO;答关系代数πJNO,PNO SPJ÷πPNOσSNO=’s1’SPJ解析上面公式中除号前的部分是所有工程与该工程所用的零件,除号后的部分是S1所供应的全部零件号;对于SPJ表中的某一个JNO,如果该工程使用的所有零件的集合包含S1所供应的全部零件号,则该JNO符合本题条件,在除法运算的结果集中;可以看到,使用关系代数的除法运算概念清晰,语言表达也很简单;7.关系代数的基本运算有哪些选择、投影、并、差和笛卡儿积五种;第4章关系数据库的标准语言SQL5.针对习题3中的4个表试用SQL完成如下操作;1找出所有供应商的姓名和所在的城市;SELECT SNAME,CITYFROM S;5找出上海厂同提供的所有零件号码SELECT DISTINCT PNOFROM SPJ WHERE SNO INSELECT SNO FROM S WHERE CITY=‘上海’;(8)把所有红色的零件的颜色改成蓝色UPDATE P SET COLOR=’蓝’ WHERE COLOR=’红’(10)从供应商的关系中删除S2的记录,并从供应关系中删除相应记录;DELETE FROM SPJ WHERE SNO=‘2’;DELETE FROM S WHERE SNO=‘S2’;6.什么是基本表什么是视图两者的区别和联系是什么基本表是本身独立存在的表;视图是人一个或几个基本表导出的表;视图本身不独立存储在数据库中,是一个虚表;即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中;用户可以如同基本表那样使用视图,可以在视图上再定义视图;7.试述视图的优点;1视图能简化用户的操作;2视图使用户能以多种角度看待同一数据;3视图对重构数据库提供了一定程度的逻辑独立性;4视图能够对机密数据提供安全保护;9.哪类视图是可以更新的基本表的行列子集视图是可以更新的;第5章数据库的安全性1什么是数据库的安全性答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露,更改过破坏;试述实现数据库安全性控制的常见方法和技术3实现数据库安全性控制的常见方法和技术有:(1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份;每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权;(2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人无法存取数据;例如C2集中地自主存取控制DAC,B1集中的强制存取控制MAC; (3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护;(4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA 可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等;(5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容;6. 什么是数据库的审计功能,为什么要提供审计功能答:审计功能是指DBMS的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中;因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在;利用数据库的审计功能,DBA可以根据审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等;第6章数据库的完整性1.什么是数据库的完整性答:数据库的完整性是指数据的正确性和相容性;6.假设有下面两个关系模式:职工职工号,姓名,年龄,职务,工资,部门号,其中职工号为主码;部门部门号,名称,经理名,地址,电话号,其中部门号是主码;用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:定义每个模式的主码;定义参照完整性;定义职工年龄不超过60岁;答:CREATE TABLE DEPTDeptno NUMBER2,Deptname VARCHAR10,Manager VARCHAR10,PhoneNumber Char12CONSTRAINT PK_SC PRIMARY KEY Deptno;CREATE TABLE EMPEmpno NUMBER4 primary key,Ename VARCHAR10,Age NUMBER2,CONSTRAINT C1 CHECK Aage < =60,Job VARCHAR9,Sal NUMBER7,2,Deptno NUMBER2,CONSTRAINT FK_DEPTNOFOREIGN KEYDeptnoREFERENCES DEPTDeptno;7关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的答:对于违反实体完整性和用户定义完整性的操作,一般都采用拒绝执行的方式处理;而对于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据的正确性;第7章数据库恢复技术5.数据库的恢复技术有哪些数据转储和登录日志文件是数据库恢复的基本技术;当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态;第8章并发控制1.在数据库中为什么要并发控制答:数据库是共享资源,通常有许多个事务同时在运行;当多个事务并发地存取数据库时就会产生同时读取和∕或修改同一数据的情况;若对并发操作不加控制就可能读取和存储不正确的数据,破坏数据库的一致性;所以数据库管理系统必须提供并发控制机制;2.并发操作可能会产生哪几类数据不一致用什么方法能避免各种不一致的情况3.答:并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据;1丢失修改两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了覆盖了T1提交的结果,导致T1的修改被丢失;2不可重复读不可重复读是指事务T1读取数据后,事务T2提交执行更新操作,使T1无法再现前一次读取结果;3读”脏”数据读“脏”数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为“脏”数据,即不正确的数据;避免不一致性的方法和技术就是并发控制;最常用的技术是封锁技术;也可以用其他技术,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制;4.基本的封锁类型有几种试述它们的含义;答:基本的封锁类型有两种:排它锁和共享锁;排它锁又称为写锁;若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁;这就保证了其他事务在T释放A上的锁之前不能再读取和修改A;共享锁又称为读锁;若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁;这就保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改; 6.如何用封锁机制保证数据的一致性答:DBMS在对数据进行读、写操作之前首先对该数据执行封锁操作,例如下图中事务T1在对进行修改之前先对A执行XockA,即对A加X锁;这样,当T2请求对A加X锁是就被拒绝,T2只能等待T1释放A上的锁后才能获得对A的X锁,这时它读到的A是T1更新后的值,再按此新的A值进行运算;这样就不会丢失T1的更新;DBMS按照一定的封锁协议,对并发控制进行控制,使得多个并发操作有序地执行,就可以避免丢失修改、不可重复读和读“脏”数据等数据不一致性;5.什么是封锁协议不同级别的封锁协议的主要区别是什么6.答:在运用封锁技术对数据加锁时,要约定一些规则;例如,在运用X锁和S锁对数据对象加锁时,要约定何时申请X锁或S锁、何时释放封锁等;这些约定或者规则称为封锁协议;对封锁方式约定不同的规则,就形成了各种不同的封锁协议、不同级别的封锁协议,例如三级封锁协议,三级封锁协议的主要区别在于什么操作需要申请封锁,何时申请封锁以及何时释放锁即持锁时间的长短;一级封锁协议:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放;二级封锁协议:一级封锁协议加上事务T在读取数据R之前必须先对其加S 锁,读完后即可释放S锁;三级封锁协议:一级封锁协议加上事务T在读取数据R之前必须先对其加S 锁,直到事务结束才释放;8.什么是活锁什么是死锁答:T1 T2 T3 T4Lock R . . .. Lock R . .. 等待lock R .Unlock 等待. Lock R. 等待Lock R 等待. 等待. 等待. 等待Unlock 等待, 等待. Lock R 如果事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待;T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍然等待;然后T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4的请求……T2有可能永远等待,这就是活锁的情形;活锁的含义是该等待事务等待时间太长,似乎被锁住了,实际上可能被激活;如果事务T1封锁了数据R1,T2封锁了数据R2,然后T1又请求封锁R2,因T2已封锁了R2,于是T1等待T2释放R2上的锁;接着T2又申请分所R1,因T1已封锁了R1,也只能T1释放R1上的锁;这样就出现了T1在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成死锁;T1 T2lock R1 ..Lock R2. .Lock R2.等待lock R1.8.试述活锁的产生原因和解决方法;答:活锁产生的原因:当一系列封锁不能按照其先后顺序执行时,就可能导致一些事务无限期等待某个封锁,从而导致活锁;避免活锁的简单方法是采用先来先服务的策略;当多个事务请求封锁同一数据对象时,封锁子系统按请求封锁的先后次序对事务排队,数据对象上的锁一旦释放就批准申请队列中的第一个事务获得锁;10.请给出预防死锁的若干方法;答:在数据库中,产生死锁的原因是两个或多个事务都已封锁了一些数据对象,然后又都请求已被其他事务封锁的数据加锁,从而出现死等待;防止死锁的发生其实就是要破坏产生死锁的条件;预防死锁通常有两种方法:(1)一次封锁法,要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行;(2)顺序封锁法,预先对数据对象规定一个封锁顺序,所有事务都能按这个顺序实行封锁;不过,预防死锁的策略不大适合数据库系统的特点,具体原因可参加概论; 11.请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁答:数据库系统一般采用允许死锁发生,DBMS检测到死锁后加以解除的方法;DBMS中诊断死锁的方法与操作系统类似,一般使用超时法或事务等待图法;超时法是:如果一个事务的等待时间超过了规定的时限,就认为发生了死锁;超时法实现简单,但有可能误判死锁,事务因其他原因长时间等待超过时限时,系统会误认为发生了死锁;若时限设置的太长,又不能及时发现死锁发生;DBMS并发控制子系统检测到死锁后,就要设法解除;通常采用的方法是选择一个处理死锁代价最小的事务,将其撤销,释放此事务持有的所有锁,使其他事务得以继续运行下去;当然,对撤销的事务所执行的数据修改操作必须加以恢复; 12.什么样的并发调度是正确的调度答:可串行化的调度室正确的调度;可串行化的调度的定义:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行执行它们时的结果相同,称这种调度策略为可串行化的调度; 13.设T1,T2,T3是如下的3个事务:T1:A=A+2;T2:A=A2;T3:A=A2;A←A²设A的初值为0.(1)若这三个事务允许并行执行,则有多少可能的正确结果,请一一列举出来;答:A的最终结果可能有2、4、8、16;因为串行执行次序有T1T2T3、T1T3T2、T2T1T3、T2T3T1、T3T1T2、T3T2T1;对应的执行结果是16、8、4、2、4、2;2请给出一个可串行化的调度,并给出执行结果;答:T1T2T3Slock AY=A=0Unlock AXlock ASlock AA=Y+2 等待写回A=2 等待Unlock A 等待Y=A=2Unlock AXlock ASlock AA=Y2 等待写回A=4 等待Unlock A 等待Y=A=4Unlock AXlock AA=Y2写回A=16Unlock A 最后结果A为16,是可串行化的调度;3请给出一个非串行化的调度,并给出执行结果;T1T2T3Slock AY=A=0Unlock ASlock AY=A=0Xlock A等待Unlock AA=Y+2写回A=2 Slock AUnlock A 等待Y=A=2Unlock AXlock AXlock A等待Y=Y2等待写回A=4等待Unlock AA=Y2写回A=0Unlock A最后结果A为0,为非串行化的调度;(4)若这3个事务都遵守两段锁协议,请给出一个不穿生死锁的可串行化调度;答:T1 T2T3Slock AY=A=0Xlock AA=Y+2 Slock A写回A=2 等待Unlock A 等待Y=A=2Xlock AUnlock A 等待Slock AA=Y2 等待写回A=4 等待Unlock A 等待Y=A=4Unlock AXlock AA=Y2写回A=16Unlock AUnlock A5若这3个事务都遵守两段锁协议,请给出一个产生死锁的调度;答:T1T2 T3Slock AY=A=0Slock AY=A=0Xlock A等待Xlock A等待Slock AY=A=0Xlock A14.试述两段锁协议的概念; 等待答:两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁;●在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁;●在释放一个封锁之后,事务不再申请和获得任何其他封锁;“两段”的含义是,事务分为两个阶段:第一阶段是获得封锁,也称为扩展阶段,在这个阶段,事务可以申请获得任何数据项上的任何类型的锁,但是不能释放任何锁;第二阶段是释放封锁,也称为收缩阶段,在这阶段,事务释放已经获得的锁,但是不能再申请任何锁;第十章概念模型与E-R方法1.什么是概念模型概念模型的作用是什么答:概念模型实际上是现实世界机器的一个中间层次;概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库人员和用户之间进行交流的语言;4.试给出3个实际部门的E-R图,要求实体型之间具有一对一,一对多,多对多各种不同的联系;n9.学校总有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授没人各带若干研究生,每个学生选修若干课程,每门课程可由若干学生选修;请用E-R图画出此学校的概念模型;答:。
数据库第三版课后习题答案【篇一:数据库系统概论(第三版)课后习题答案】xt>1、试述数据、数据库、数据库管理系统、数据库系统的概念。
(3、4、5页)答:描述事物的符号记录称为数据;数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库管理系统是位于用户与操作系统之间的一层数据管理软件; 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
2.使用数据库系统有什么好处?(12页)答:数据库系统使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的阶段,这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。
3.试述文件系统与数据库系统的区别和联系。
(8、9、10页)答:1)数据结构化是数据库与文件系统的根本区别。
在文件系统中,相互独立的文件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。
数据库系统实现整体数据的结构化,是数据库的主要特征之一。
2)在文件系统中,数据的最小存取单位是记录,粒度不能细到数据项。
而在数据库系统中,存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项一个记录或或一组记录。
3)文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。
而在数据库系统中数据不再针对某一应用,而是面向全组织,具有整体的结构化。
5.试述数据库系统的特点。
(9、10、11页)答:数据结构化;数据的共享性高、冗余度低、易扩充;数据独立性高;数据由dbms统一管理和控制。
6.数据库管理系统的主要功能有哪些? (4页)答:数据定义功能、数据操纵功能、数据库的运行管理、数据库的建立和维护功能。
7.试述数据模型的概念(13页)、数据模型的作用、数据模型的三个要素。
数据库课后答案————————————————————————————————作者:————————————————————————————————日期:2第1章习题一、填空题1. 在数据管理技术发展历程的几个阶段中,在(人工管理)阶段数据不能保存。
2. 数据模型由以下三要素组成:(数据结构)、数据操作和数据的约束条件。
3. 数据模型按不同的应用层次分成三种类型,它们是:概念数据模型、(逻辑数据模型)、(物理数据模型)。
4. E-R模型属于(概念数据)模型,结构数据模型指层次、网状、关系。
5. 数据库专家们提出了数据库系统分级的系统结构模型,整个系统分为三级,它们分别是(外模式)、(模式)和(内模式)。
二、选择题1.在文件系统阶段,操作系统管理数据的基本单位是(A )。
A.文件B.记录C.程序D.数据项2. 数据管理技术发展过程中,文件系统与数据库系统的重要区别是数据库具有(C)。
A.数据可共享B.数据无冗余C.特定的数据模型D.有专门的数据管理软件3. 在数据库的数据模型中有(A)。
A.网状模型、层次模型、关系模型B.数字型、字母型、日期型C.二数值型、字符型、逻辑型D.数学模型、概念模型、逻辑模型4. 用表格形式的结构表示实体类型以及实体类型之间联系的数据模型是(A)。
A.关系数据模型B.层次数据模型C.网状数据模型D.面向对象数据模型5. 描述概念模型的常用方法是(D)。
A.建立数据模型方法B.需求分析方法C.二维表方法D.实体-联系方法三、判断题1. 数据库管理员是专门从事数据库设计、管理和维护的工作人员。
(√)2. 计算机的数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。
(√)3. 逻辑数据模型(又称数据模型),它是一种面向客观世界、面向用户的模型;它与具体的数据库系统无关,与具体的计算机平台无关。
(⨯)4. 数据模型通常由数据结构、数据操作和完整性约束三部分组成。
(√)5. 内模式亦称为子模式或用户模式,描述的是数据的局部逻辑结构。
数据库实用教程课后习题参考答案(1-4章)第1、2章1.1 名词解释:◆ DB:数据库(Database),DB是统一管理的相关数据的集合。
DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。
◆ DBMS:数据库管理系统(Database Management System),DBMS是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。
DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。
◆ DBS:数据库系统(Database System),DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。
◆ 1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,好么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。
◆ 1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。
◆ M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。
◆ 数据模型:表示实体类型及实体类型间联系的模型称为“数据模型”。
它可分为两种类型:概念数据模型和结构数据模型。
◆ 概念数据模型:它是独门于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构。
◆ 结构数据模型:它是直接面向数据库的逻辑结构,是现实世界的第二层抽象。
这类模型涉及到计算机系统和数据库管理系统,所以称为“结构数据模型”。
结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。
数据库课后练习及标准答案————————————————————————————————作者:————————————————————————————————日期:第一章:一、单选题1.以下的英文缩写中表示数据库管理系统的是( B)。
A. DB B.DBMS C.DBA D.DBS2.数据库管理系统、操作系统、应用软件的层次关系从核心到外围分别是(B )。
A. 数据库管理系统、操作系统、应用软件B. 操作系统、数据库管理系统、应用软件C. 数据库管理系统、应用软件、操作系统D. 操作系统、应用软件、数据库管理系统3.DBMS是(C )。
A. 操作系统的一部分B.一种编译程序 C.在操作系统支持下的系统软件 D.应用程序系统4.数据库系统提供给用户的接口是(A )。
A.数据库语言 B.过程化语言 C.宿主语言D.面向对象语5.(B )是按照一定的数据模型组织的,长期存储在计算机内,可为多个用户共享的数据的聚集。
A.数据库系统 B.数据库C.关系数据库D.数据库管理系统6. ( C)处于数据库系统的核心位置。
A.数据模型 B.数据库C.数据库管理系统D.数据库管理员7.( A)是数据库系统的基础。
A.数据模型B.数据库C.数据库管理系统D.数据库管理员8.( A)是数据库中全部数据的逻辑结构和特征的描述。
A.模式B.外模式 C.内模式 D.存储模式9.(C )是数据库物理结构和存储方式的描述。
A.模式 B.外模式 C.内模式D.概念模式10.( B)是用户可以看见和使用的局部数据的逻辑结构和特征的描述》 A.模式B.外模式C.内模式D.概念模式11.有了模式/内模式映像,可以保证数据和应用程序之间( B)。
A.逻辑独立性B.物理独立性C.数据一致性D.数据安全性12.数据管理技术发展阶段中,文件系统阶段与数据库系统阶段的主要区别之一是数据库系统( B)。
A.有专门的软件对数据进行管理B.采用一定的数据模型组织数据C.数据可长期保存D.数据可共享13.关系数据模型通常由3部分组成,它们是(B )。
学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。
(1)请设计此学校的教学管理的E-R 模型。
(2)将E-R 模型转换为关系模型。
2)系 (系号,系名,系主任)教师 (教师号,教师名,职称,系号) 学生(学号,姓名,年龄,性别,系号) 项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号) 选修(课号,学号,分数) 负责(教师号,项目号,排名)3、设有下图所示的医院组织。
试画出其E-R 图及关系模式并用关系代数方法写出下面之查询公式:病房医生 病人图3-1 某医院人员组织关系框图 编号 名称所在位置主任姓名编号姓名患何种病 病房号编号 姓名年龄职称管辖病房号① 找出外科病房所有医生姓名;② 找出管辖13号病房的主任姓名; ③ 找出管辖病员李维德的医生姓名。
关系模式:病房(编号、名称、所在位置、主任姓名) 医生(编号、姓名、年龄、职称、管辖病房号) 病人(病号、姓名、患何种病、病房号)答案:①、''(外科位置医生姓名=∏σ) ②、'13'(=∏病房号主任姓名σ(病房))③、''(李维德病人姓名医生姓名=∏σ)第三章 习题一、单项选择题1、如果要在Windows 平台上运行DB2应用程序访问运行在UNIX 上的数据库服务器,需要在Windows 上安装那种产品?( )A DB2 企业服务器版B DB2 个人版C DB2 连接器D DB2 运行时客户端 答案:D2、下面那种产品不允许远程的客户端应用程序连接到该服务器?( ) A DB2 快速版 B DB2 个人版C DB2 企业服务器版D DB2 工作组服务器版 答案:B 3、一个软件公司要开发一个需要访问DB2 for Linux 和DB2 for z/OS 的应用程序。
第1章1.试述数据、数据库、数据库系统、数据库管理系统的概念。
答:(1)数据:描述事物的符号记录成为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
(2)数据库:数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按照一定的数据模型组织。
描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
(3)数据库系统:数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发人具)、应用系统、数据库管理员构成。
(4)数据库管理系统:数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS的主要功能包括数据定义功能、数据操作功能、数据库的建立和维护功能。
6.试述数据库系统三级模式结构,这种结构的优点是什么?答:数据库系统的三级模式机构由外模式、模式和内模式组成。
外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
模式亦称逻辑模式,是数据库中全体数据呃逻辑结构和特征的描述,是所有用户的公共数据视图。
模式描述的是数据的全局逻辑结构。
外模式涉及的是数据的内部逻辑结构,通常是模式的子集。
内模式,亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。
数据库系统的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。
为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式∕模式映像和模式∕内模式映像。
正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
7.定义并解释下列术语。
第1章习题一、填空题1. 在数据管理技术发展历程的几个阶段中,在(人工管理)阶段数据不能保存。
2. 数据模型由以下三要素组成:(数据结构)、数据操作和数据的约束条件。
3. 数据模型按不同的应用层次分成三种类型,它们是:概念数据模型、(逻辑数据模型)、(物理数据模型)。
4. E-R模型属于(概念数据)模型,结构数据模型指层次、网状、关系。
5. 数据库专家们提出了数据库系统分级的系统结构模型,整个系统分为三级,它们分别是(外模式)、(模式)和(内模式)。
二、选择题1.在文件系统阶段,操作系统管理数据的基本单位是(A )。
A.文件B.记录C.程序D.数据项2. 数据管理技术发展过程中,文件系统与数据库系统的重要区别是数据库具有(C)。
A.数据可共享B.数据无冗余C.特定的数据模型D.有专门的数据管理软件3. 在数据库的数据模型中有(A)。
A.网状模型、层次模型、关系模型B.数字型、字母型、日期型C.二数值型、字符型、逻辑型D.数学模型、概念模型、逻辑模型4. 用表格形式的结构表示实体类型以及实体类型之间联系的数据模型是(A)。
A.关系数据模型B.层次数据模型C.网状数据模型D.面向对象数据模型5. 描述概念模型的常用方法是(D)。
A.建立数据模型方法B.需求分析方法C.二维表方法D.实体-联系方法三、判断题1. 数据库管理员是专门从事数据库设计、管理和维护的工作人员。
(√)2. 计算机的数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。
(√)3. 逻辑数据模型(又称数据模型),它是一种面向客观世界、面向用户的模型;它与具体的数据库系统无关,与具体的计算机平台无关。
(⨯)4. 数据模型通常由数据结构、数据操作和完整性约束三部分组成。
(√)5. 内模式亦称为子模式或用户模式,描述的是数据的局部逻辑结构。
(⨯)四、简答题1.解释数据库、数据库管理系统和数据库系统的概念。
答:数据库(DataBase)是具有统一结构形式、可共享的、长期储存在计算机内的数据的集合。
数据库管理系统(DataBase Management System)是一组用于数据管理的通用化软件所组成的软件系统,位于用户与操作系统之间,是数据库系统的核心。
它负责数据库中的数据组织、数据操纵、数据维护和数据控制等功能的实现。
数据库系统(DataBase System)是由数据库、数据库管理系统、数据库管理员和用户等组成的计算机系统的总称。
2.数据管理经历了哪几个阶段,各阶段的特点是什么?答:数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。
人工管理数据有如下特点:(1)数据不保存(2)应用程序管理数据(3)数据不共享(4)数据不具有独立性文件系统管理数据具有如下特点:(1)数据可以长期保存(2)由文件系统管理数据(3)数据共享性差,冗余度大(4)数据独立性低数据库系统管理数据具有如下特点:(1)数据结构化(2)数据共享性好,冗余度低(3)数据独立性高(4)数据由DBMS统一管理和控制3.数据库管理系统的主要功能有哪些?答:数据库管理系统的功能主要包括以下六个方面:(1)数据定义数据定义包括定义构成数据库结构的模式、存储模式和外模式,定义各个外模式与模式之间的映射,定义模式与存储模式之间的映射,定义有关的约束条件,例如,为保证数据库中的数据具有正确的语义而定义的完整性规则、为保证数据库安全而定义的用户口令和存取权限等。
(2)数据操纵数据操纵包括对数据库数据的检索、插入、修改和删除等基本操作。
(3)数据库运行管理对数据库的运行进行管理是DBMS运行时的核心部分,包括对数据库进行并发控制、安全性检查、完整性约束条件的检查和执行、数据库的内部维护(如索引、数据字典的自动维护)等。
所有访问数据库的操作都要在这些控制程序的统一管理下进行,以保证数据的安全性、完整性、一致性以及多用户对数据库的并发使用。
(4)数据组织、存储和管理数据库中需要存放多种数据,如数据字典、用户数据、存取路径等,DBMS负责分门别类地组织、存储和管理这些数据,确定以何种文件结构和存取方式物理地组织这些数据,如何实现数据之间的联系,以便提高存储空间利用率以及提高随机查找、顺序查找、增、删、改等操作的时间效率。
(5)数据库的建立和维护建立数据库包括数据库初始数据的输入与数据转换等。
维护数据库包括数据库的转储与恢复、数据库的重组织与重构造、性能的监视与分析等。
(6)数据通信接口DBMS需要提供与其他软件系统进行通信的功能。
例如,提供与其他DBMS或文件系统的接口,从而能够将数据转换为另一个DBMS或文件系统能够接受的格式,或者接收其他DBMS或文件系统的数据。
4.试述数据模型及其要素。
答:数据模型通常都是由数据结构、数据操作和完整性约束三个要素组成。
①数据结构用于描述系统的静态特性,研究与数据类型、内容、性质有关的对象,例如关系模型中的域、属性、关系等。
②数据操作数据库主要有检索和更新(如插入、删除、修改)两大类操作。
数据模型必须定义这些操作的确切含义、操作符号、操作规则以及实现操作的语言。
③数据的约束条件数据的约束条件是一组完整性规则的集合。
完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。
此外,数据模型还应该提供定义完整性约束条件的机制。
5.解释实体、属性、码、实体集、E-R模型的概念。
答:●实体:客观存在并可相互区别的事物称为实体。
实体可以是具体的人、事、物,也可以是抽象的概念或联系。
●实体的属性:实体所具有的某一特性称为属性。
一个实体可以由若干个属性来描述。
●码:能够唯一标识一个实体的属性或属性组称为实体的码。
●实体集:同类型实体的集合称为实体集。
●E-R模型(Entity-Relationship model ):也称实体联系模型,是一种被广泛使用的概念模型。
该模型将现实世界的要求转化成实体、联系、属性等几个基本概念,以及它们间的基本关系,并且可以用一种图直观的表示出来。
第2章习题一、填空题1.关系数据库系统是支持(关系模型)的数据库系统。
3.关系模型由(关系数据结构)、(关系数据操作)、(关系完整性规则)三部分组成。
4.关系模型定义了(实体完整性)、(参照完整性)、(用户定义的完整性)三类完整性。
二、选择题1.在关系模型的完整性约束中,实体完整性规则是指关系中(C)。
A.不允许有空行B.属性值不允许为空C.主键值不允许为空D.外键值不允许为空2.参照完整性规则要求(A)。
A.不允许引用不存在的元组B. 允许引用不存在的元组C.不允许引用不存在的属性D. 允许引用不存在的属性4.最常用的一种基本数据模型是关系数据模型,它用统一的( D )结构来表示实体以及实体之间的联系。
A.树B.网络C.图D.二维表三、判断题1.关系语言是一种高度过程化的语言。
(⨯)2.关系数据语言分为两类,一类是关系数据语言,一类是关系演算语言。
(⨯)3.实体完整性和参照完整性是关系模型必须满足的完整性约束条件,应该由关系系统自动支持。
(√)4.实体完整性规则中,若属性A是基本关系R的主属性,则A也可以取空值。
(⨯)四、简答题3.在关系模型的参照完整性规则中,为什么外部码属性的值也可以为空?什么情况下才可以为空?答:外部码即外码,外码为空表示作为外码的属性没有引用任何值。
当外码不是参照关系的主属性时可以取空值。
4.主码、侯选码、外部码的联系和区别是什么?答:主码和候选码都是能唯一标识一个元组的属性或属性组。
主码一定是候选码,是候选码中的一个,一个关系只能有一个主码。
候选码不一定是主码,一个关系可能有多个候选码。
一个关系的外码一定与某个关系的主码相对应,即外码与主码列的数据类型必须匹配,列长度应当相等,列名可以相同也可以不同。
当主码的列值被更新时,与之相关联的表的外码列值也将被做相应的更新。
当向外码的表中插入数据时,若外码值在与之相关联的表的主码列中不存在时,系统会拒绝插入数据。
一个关系的外码一定不是该关系的候选码,也一定不是该关系的主码,但可能是主码的一部分。
第4章习题一、填空题1. SQL Server 2000的主要版本有企业版、标准版、个人版、开发版和评估版。
2.启动SQL Server的方法有三种,它们是.通过服务器管理器、企业管理器、控制面板。
3.Transcat-SQL语言主要由5部分组成,分别是数据定义语句、数据操纵语句、数据控制语句、系统存储过程和一些附加的语言元素。
4.在Transcat-SQL语言中,数据操纵语句包括INSERT、DELETE、UPDATE和SELECT。
5. SQL Server 2000支持的身份认证模式有Windows身份认证和SQL SERVER身份验证(或混合身份验证)。
二、简答题1.SQL Server 2000具有哪些特点?答:●采用客户/服务器体系结构。
●提供了丰富的编程接口工具。
●与Windows2000操作系统完全集成。
●支持XML(Extensive Markup Language)扩展标记语言。
●提供数据仓库功能。
2.SQL Server 2000各版本的适用范围是什么?答:●企业版:通常用作一个企业级的数据库服务器。
它支持数十个TB级的数据库。
●标准版:一般用作工作组或部门级的数据库服务器,支持GB级的数据库。
●个人版:主要用于移动用户。
●开发版:主要供数据库应用程序开发人员进行应用程序开发并存储数据。
●评估版:它主要用于测试SQL Server 2000的功能。
3.SQL Server 2000默认的安装目录是什么?答:Microsoft SQL Server\MSSQL4.在注册SQL Server 2000服务器时,需要提供哪些内容?答:注册服务器时需提供以下内容:被注册的服务器属于哪个组、服务器的名称或地址、登录服务器时使用的验证模式以及登录名和密码。
5.数据定义语句的作用是什么?主要包含哪些语句?答:数据定义语句用于创建、修改或删除数据库以及数据库中的各种对象,包括表、视图、索引、触发器和存储过程等。
使用的语句有CREATE、ALTER和DROP。
第5章习题一、填空题1. SQL Server 2000安装过程中创建了4个系统数据库,其中__MASTER__数据库控制SQL Server的所有方面。
2. 当数据庞大时,主数据文件的大小超过操作系统对单一文件大小的限制时,必须使用_辅助数据文件(或次数据文件)存储数据。
3. 主数据文件的扩展名是__.mdf__。
4. 用Transact-SQL语言向表中插入数据的语句是__INSERT__。
5. 用Transact-SQL语言修改表中数据的语句是___UPDATE__。