数据库系统原理习题

上传人:hjk****65 文档编号:180312974 上传时间:2023-01-05 格式:DOC 页数:34 大小:291.50KB
返回 下载 相关 举报
数据库系统原理习题_第1页
第1页 / 共34页
数据库系统原理习题_第2页
第2页 / 共34页
数据库系统原理习题_第3页
第3页 / 共34页
点击查看更多>>
资源描述
习题数据库系统基本概念. 名词解释DBDB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。DB能为各种用户共享,具有较小冗余度、数据间联系紧密而又有较高的数据独立性等特点。DBMS是位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBS是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即它是采用数据库技术的计算机系统。联系是实体间的相互关系。联系的元数与一个联系有关的实体集个数。:联系如果实体集E1中每个实体至多和实体集E2中一个实体有联系,反之亦然,那么实体集E1和E2的联系称为“一对一联系”,记为“:”。:N联系如果实体集E1中的每个实体可以与实体集E2中的任意个(个或多个)实体有联系,而E2中的每个实体至多和E1中的一个实体有联系,那么称E1对E2的联系是一对多联系,记作:“:N ”。M:N联系如果实体集E中的每个实体可以与实体集E2中的任意个(个或多个)实体有联系,反之亦然,那么称E1和E2的联系是“多对多联系”,记作“M:N”。数据模型在数据库技术中,我们用数据模型的概念描述数据库的结构和语义,对现实世界的数据进行抽象。根据数据抽象级别定义了四种模型:概念数据模型、逻辑数据模型、外部数据模型和内部数据模型。概念模型表达用户需求观点的数据全局逻辑结构的模型。逻辑模型表达计算机实现观点的DB全局逻辑结构的模型。主要有层次、网状、关系模型等三种。外部模型表达用户使用观点的DB局部逻辑结构的模型。内部模型表达DB物理结构的模型。层次模型用树型(层次)结构表示实体类型及实体间联系的数据模型。网状模型用有向图结构表示实体类型及实体间联系的数据模型。关系模型是由若干个关系模式组成的集合。关系模式相当于记录类型,它的实例是关系,每个关系实际上是一张二维表格。外模式用户与数据库系统的接口,是用户用到的那部分数据的描述。外模式由若干个外部记录类型组成。逻辑模式是数据库中全部数据的整体逻辑结构的描述。它由若干个逻辑记录类型组成,还包含记录间联系、数据的完整性、安全性等要求。内模式是数据库在物理存储方面的描述,定义所有内部记录类型、索引和文件的组织形式,以及数据控制方面的细节。外模式/逻辑模式映像存在于外模式和逻辑模式之间,用于定义外模式和逻辑模式之间的对应性,一般放在外模式中描述。逻辑模式/内模式映像存在于逻辑模式和内模式之间,用于定义逻辑模式和内模式之间的对应性,一般放在内模式中描述。数据独立性是指应用程序和数据库的数据结构之间相互独立,不受影响。在修改数据结构时,尽可能不修改应用程序。分物理数据独立性和逻辑数据独立性两个级别。物理数据独立性对内模式修改时,对逻辑模式/内模式像作相应修改,可以尽量不影响逻辑模式。逻辑数据独立性逻辑模式修改时,对外模式/逻辑模式映像作相应修改,可以使外模式和应用程序保持不变。主语言在数据库技术中,用于编写应用程序的高级程序设计语言。DDL数据定义语言。DBMS提供DDL定义数据库的三级结构、两级映像,定义数据的完整性约束、保密限制等约束。DML数据操纵语言。DBMS提供DML实现对数据的操作。基本的数据操作有两类:检索(查询)、更新(插入、删除、修改)。分为过程性DML和非过程DML两种。过程性DML是指用户编程时,不仅需要指出“做什么”(需要什么样的数据),还需要指出“怎么做”(怎样获得这些数据)。如层次、网状的DML。非过程性DML用户编程时,只需要指出“做什么”,不需要提出“怎么做”。如关系型DML。DD数据库系统中存放三级结构定义的数据库。它还存放数据库运行时的统计信息。DD系统管理DD的子系统。. 人工管理阶段的数据管理有哪些特点?答:、数据不保存在计算机内。、没有专用的软件对数据进行管理。、只有程序概念,没有文件概念。、数据面向程序。. 文件系统阶段的数据管理有哪些特点?答:、数据以“文件”的形式可以长期保存在外部存储器的磁盘上。、数据的逻辑结构与物理结构有了区别,但比较简单。、文件组织已多样化。有索引文件、链接文件和直接存取文件等。、数据不再属于某个特定的程序,可以重复使用,即数据面向应用。、对数据的操作以记录为单位。. 文件管理阶段数据管理有哪些缺陷?试举例说明。答:三个缺陷:数据冗余、数据不一致、数据联系弱。例:一个单位的不同部门在一个计算机中分别建立职工档案文件、职工工资文件、职工保健文件三个独立数据文件就会造成上述三个缺陷。描述(略)。. 数据管理的数据库阶段产生的标志是哪三件事情?答:、1968年美国IBM公司推出层次模型的IMS系统;、1969年美国CODASYL(Conference On Data System Language)组织发布了DBTG(Data Base Task Group)报告; 、1970年美国IBM公司的E .F.Codd连续发表论文,提出关系模型。. 数据库阶段的数据管理有哪些特色?答:、采用数据模型表示复杂的数据结构。、有较高的数据独立性。、数据库系统为用户提供了方便的用户接口。、数据库系统提供四个方面的数据控制功能:数据库的恢复、数据库的并发控制、数据的完整性、数据的安全性。、增加了系统的灵活性。对数据的操作不一定以记录为单位,可以以数据项为单位。. 高级数据库阶段有哪些技术?答:面向对象的概念建模、开放数据库互联技术。. 逻辑记录与物理记录,逻辑文件与物理文件有些什么区别和联系?答:数据描述有两种形式:物理数据描述和逻辑数据描述。物理数据描述是指数据在存储设备上的存储方式的描述,物理数据是实际存储在物理设备上的数据。物理记录和物理文件都是用来描述存储数据的细节。逻辑数据描述是指程序员或用户用以操作的数据形式的描述,是抽象的概念化数据。逻辑记录、逻辑文件都是用户观点的数据描述。. 数据抽象的过程,有哪几个步骤?答:第步:根据用户的需求,设计数据库的概念模型;第步:根据转换规则,把概念模型转换成数据库的逻辑模型;第步:根据用户的业务特点,设计不同的外部模型,供程序员使用;第步:根据逻辑模型设计内部模型,实现数据库。1.10 概念模型、逻辑模型、外部模型、内部模型各具有哪些特点?答:概念模型特点:1) 表达了数据的整体逻辑结构,它是系统用户对整个应用项目涉及的数据的全面描述;2) 从用户的需求观点出发,对数据建模;3) 独立于硬件和软件;4) 是数据库设计人员和用户之间的交流工具。逻辑模型的特点:1) 表达了DB的整体逻辑结构,是设计人员对整个应用系统项目数据库的全面描述;2) 从数据库实现的观点出发,对数据建模;3) 独立于硬件,但依赖于软件(DBMS);4) 是数据库设计人员与应用程序员之间的交流工具。外部模型的特点:1) 逻辑模型的一个逻辑子集;2) 独立于硬件,但依赖于软件;3) 反映了用户使用数据库的观点。内部模型的特点:1) 是数据库最低层抽象,它描述数据在外存上存储方式、存取设备和存取方法;2) 与硬件和软件紧密相连。1.11 试叙述层次、网状和关系三种逻辑模型的区别。答:层次:用树型结构表示(复杂),只能表示1:N ,记录间联系用指针实现,过程性DML;网状:用有向图表示(复杂),可以表示1:N 或M:N,记录间联系用指针实现,过程性DML;关系:由关系模式集合表示(简单),可以表示1:N 或M:N,记录间的联系用关键码实现,非过程性DML。1.12 外部模型使数据库系统有哪些优点?答:简化了用户的观点; 有助于数据库的安全保护; 外部模型是对概念模型的支持,如果用户使用外部模型得心应手,那么说明当初根据用户需求综合成的概念模型是正确的、完善的。1.13 数据独立性和数据联系这两个概念有什么区别? 答:(略)1.14 试叙述用户、DB的三级模式结构、磁盘上的物理文件之间有些什么联系和不同?答:在用户到数据库间,DB的数据结构有三个层次:外部模型、逻辑模型、内部模型。这三个层次用DB的DDL定义后的内容分别是外模式、逻辑模式、内模式。(叙述三个模式的概念)内模式并不涉及物理设备的约束,那一部分由操作系统完成。如从磁盘读写数据的操作。1.15 试述DBMS的工作模式和主要功能。答:DBMS工作模式:1) 接受应用程序的数据请求和处理请求;2) 将用户的数据请求(高级指令)转换成复杂的机器代码(低级指令);3) 实现对数据库的操作;4) 从对数据库的操作中接受查询结果;5) 对查询结果进行处理(格式转换);6) 将处理结果返回给用户。DBMS主要功能:1) 数据库的定义功能;2) 数据库的操纵功能;3) 数据库的保护功能;4) 数据库的维护功能;5) 数据字典。1.16 什么是DB的系统缓冲区?其作用是什么? 答:DBMS为应用程序在内存中开辟的一个DB的系统缓冲区。用于数据的传输和格式的转换。1.17 DBS由哪几部分组成?它有哪些系统软件?其中DD有什么作用?答:由数据库、硬件、软件、数据库管理员组成。包括DBMS、OS、各种主语言和应用开发支撑软件等系统软件。DD用来存放三级数据结构定义的数据库,还用来存储数据库运行时的统计信息。1.18 什么是DBA?DBA应具有什么素质?DBA的职责是什么?答:DBA是控制数据整体结构的一组人员,负责DBS的正常运行,承担创建、监控和维护数据库结构的责任。DBA应具有的素质:1) 熟悉企业全部数据的性质和用途;2) 对所有用户的需求有充分的了解;3) 对系统的性能非常熟悉;4) 兼有系统分析员和运筹学专家的品质和知识。DBA的职责:1) 定义模式;2) 定义内模式;3) 与用户的联络;4) 定义安全性规则,对用户访问数据库授权;5) 定义完整性规则,监督数据库的运行;6) 数据库的转储和恢复工作。1.19 试对DBS的全局结构作详细解释。 答:用户、DBMS(查询处理器、存储管理器)、磁盘存储器。1.20 从模块结构观察,DBMS由哪些部分组成? 答:查询处理器、存储管理器。1.21 使用DBS的用户有哪几类? 答:DBA、专业用户、应用程序员、终端用户。1.22 DBMS的查询处理器和存储管理器分别由哪几部分组成?答:DBMS查询处理器:DDL解释器、DML编译器、嵌入式DML预编译器、查询求值引擎。DBMS存储管理器:权限和完整性管理器、事务管理器、文件管理器、缓冲区管理器。1.21 磁盘存储器中有哪五类主要的数据结构? 答:数据文件、数据字典、索引、统计数据、日志。1.22 DBS能产生哪些效益?答:灵活性、简易性、面向用户、有效的数据控制、加快应用系统的开发速度、维护方便、标准化。习题2数据库设计和ER模型2.1 名词解释数据库工程数据库应用系统的开发是一项软件工程,但又有自己的特点。数据库系统生存期数据库应用系统从规划、设计、实现、维护到最后被新的系统取代而停止使用的整个期间。实体是一个数据对象,指应用中可以区别的客观存在的事物。实体集同一类实体构成的集合。实体类型是对实体集中实体的定义。实体标识符在一个实体中,能够唯一标识实体的属性或属性集合。联系表示一个或多个实体间的关联关系。联系集同一类联系构成的集合。联系类型对联系集中联系的定义。属性实体的某一特性。简单属性不可再分隔的属性。复合属性可再分解为其它属性的属性。单值属性同一实体的属性只能取一个值。多值属性同一实体的属性可能取多个值。存储属性需要把属性值存入数据库的属性。派生属性不需要把属性值存入数据库,属性值可以从其它属性值推导出的属性。联系元数(度数)指一个联系涉及的实体集个数。映射基数实体集E1和E2之间有二元联系,则参与一个联系中的实体的个数称为映射基数。完全参与如果实体集中的每个实体都参与联系集R的至少一个联系中,称实体集E完全参与。部分参与如果实体集中的只有部分实体参与联系集R的联系中,称实体集E部分参与。关系模型用二维表格表示实体集,用关键码表示实体间的联系的数据模型。关系模式关系模型中的记录类型。关系实例是一个属性集相同的元组的集合。(关系)属性关系模型中的字段。(关系)域关系模型中字段的取值范围。(关系)元组关系模型中的记录。超键在关系中能唯一标识元组的属性集,称为关系模式的超键。候选键不含有多余属性的超键。主键用户选作元组标识的候选键。外键如果模式R中的属性K是其它模式的主键,则K在模式R中称为外键。实体完整性规则要求关系中元组在组成主键的属性上不能有空值,否则就起不到唯一标识元组的作用了。参照完整性规则如果属性集K是关系模式R1的主键,同时也是关系模式R2的外键,那么在R2中,K的取值只允许有两种可能,或者为空值,或者等于R1关系中的某个主键值。弱实体如一个实体对另一个实体(强实体)具有很强的依赖联系,而且该实体主键的一部分或全部从其强实体中获得,则该实体为弱实体。子类实体当较低层次上的实体类型表达了与之联系的较高层次上的实体类型的特殊情况时,就称较低层次上的实体类型为子类实体。超类实体当较低层次上的实体类型表达了与之联系的较高层次上的实体类型的特殊情况时,就称较低层次上的实体类型为子类实体。2.2 数据库设计的规划阶段应做哪些事情?答:、系统调查。画出应用单位组织层次图。 、可行性分析。从技术、经济、效益、法律等各方面可行性进行分析,写出可行性分析报告,组织专家讨论。 、确定数据库系统的总目标,对应用单位的工作流程进行优化,制订项目开发计划。获得决策部门批准后,就正式进入数据库系统的开发工作。2.3 数据库设计的需求分析阶段工作主要由哪四步组成?答:、分析用户活动,产生业务流程图。 、确定系统范围,产生系统关联图(确定人机界面)。 、分析业务活动涉及的数据,产生数据流图。 、分析系统数据,产生数据字典。2.4 在数据库设计中,为什么要有概念设计这一阶段?答:如果没此阶段,直接将需求分析后的用户信息需求的数据存储格式转换成DBMS能处理的逻辑模型,注意力往往被牵扯到更多的细节,而不能集中到最重要的信息组织结构和处理模型上,使设计依赖于具体的DBMS逻辑模型,不能很好地适应外界的变化。在需求分析和逻辑设计间增加此阶段,使设计人员仅从用户的观点看待数据和处理需求、约束,产生反映用户观点概念模型。将概念设计从设计过程中独立开来,可以使数据库设计各阶段任务单一化,减小复杂度,便于组织管理,也能较好地适应各种变化,转换成现在普遍使用的关系模型。2.5 试述概念设计的主要步骤?答:、进行数据抽象(聚集、概括),设计局部概念模型; 、将局部概念模型综合成全局概念模型(削除冲突,即不一致性); 、评审(用户评审、DBA及应用开发人员评审)。2.6 逻辑设计的目的是什么?试述逻辑设计阶段主要步骤及内容。答:目的是把概念设计阶段设计好的概念模型转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑模型。主要步骤:1) 把概念模型转换成逻辑模型;2) 设计外模式;3) 设计应用程序和数据库的接口;4) 评价模型(定量分析处理频率和数据容量、性能测量);5) 修正模型。2.7 什么是数据库结构的物理设计?试述其具体步骤。答:物理设计就是对于给定的基本数据模型选取一个最适合应用环境的物理结构的过程。数据库的物理结构主要指数据库存储记录格式、存储记录安排、存取方法。具体步骤:1) 存储记录结构设计:包括记录的组成、数据项的类型、长度,以及逻辑记录到存储记录的映射。2) 确定数据存放位置:可以把经常同时访问的数据组合在一起(记录聚簇技术)。3) 存取方法的设计:存取路径分主存取路径与辅存取路径,前者用于主键检索,后者用于辅助键检索。4) 完整性和安全性考虑。5) 程序设计。2.8 数据库实现阶段主要有哪几件事情?答:、定义数据结构。 、数据装载:人工装载(筛选数据、转换数据格式、输入数据、校验数据)、计算机辅助装载(筛选数据、输入数据、校验数据、转换数据、综合数据)。 、编制与调试应用程序。 、数据库试运行(联合调试功能调试、性能调试)。2.9 数据库系统投入运行后,有哪些维护工作?答:、数据库的转储和恢复。 、数据库的安全性、完整性控制。 、数据库性能和监督、分析、改进。 、数据库的重组织和重构造。2.10 在概念设计中,如何把多值属性变换成系统容易实现的形式?答:、将原来的多值属性用几个新的单值属性来表示。 、将原来的多值属性用一个新的实体类型来表示。2.11 对联系类型有哪两种约束?试详细解释之。答:联系类型的约束限制了参与联系的实体数目,有基数约束、参与约束。基数约束表示了参与一个联系的实体的个数约束,通过映射基数来表达,有1:1,1:N,M:N,M:1四种。参与约束表示实体集中是部分实体还是全部实体参与联系集中的联系。有部分参与和完全参与两种。2.12 采用ER模型的数据库概念设计有哪些主要的步骤?答:、设计局部ER模型(确定局部结构范围、定义实体、定义联系、分配属性); 、设计全局ER模型(确定公共实体类型、合并局部ER模型、削除冲突); 、全局ER模型优化(合并实体类型、消除冗余属性、消除冗余联系);2.13 在关系模型中,关系具有哪些性质?答:、关系中每一个属性值都是不可分解的; 、关系中不允许出现重复元组; 、由于关系是一个集合,因此不考虑元组间的顺序,即没有行序; 、元组的属性在理论上也是无序的,但使用时按习惯考虑列的顺序。2.14 为什么关系中的元组没有先后顺序?且不允许有重复的元组?答:因为是集合。(略)2.15 参照完整性规则使用时,有哪些变通?试举例说明。答:、外键和相应的主键可以不同名,只要定义在相同的值域上即可; 、R1和R2可以是同一个关系模式,此时表示同一个关系中不同元组间的联系; 、外键值是否允许为空,视具体问题而定。2.19 ER图转换成关系模式集的具体思想是什么? 答:P55。2.20 采用ER模型的数据库逻辑设计有哪些步骤?答:导出初始关系模式集、规范化处理、模式评价、模式修正、设计子模式。习题3关系模式设计理论3.1 名词解释函数依赖设有关系模式R(U),X,Y是属性集U的子集,只要r是R有当前关系,对r中的任意两个元组t和s,都有tXsX蕴含tYsY,那么就称函数依赖(FD)XY在关系模式R(U)中成立。平凡的函数依赖对于FD XY,如果YX,那么该FD就是平凡的FD。函数依赖集F的闭包F+设F为函数依赖集,被F逻辑蕴涵的函数依赖全体构成的集合。属性集X的闭包X+设F是属性集U上的FD集,X是U的子集,那么属性集X的闭包是一个从F集使用FD推理规则推出的所有满足XA的属性A的集合。函数依赖的逻辑蕴涵设F是关系模式R上成立的函数依赖集合,XY是一个FD,如果对于R的每一个满足F的关系r也满足XY,那么称F逻辑蕴涵XY。函数依赖集的等价如果关系模式R(U)上的两个函数依赖集F和G,有F+G+,则称F和G是等价的函数依赖集。最小依赖集满足下面三个条件的函数依赖集G:1) G中每个FD的右边都是单属性;2) G中没有冗余的FD。即G中不存在这样的函数依赖XY,使得GXY与G等价;3) G中每个FD的左边没有冗余的属性。即G中不存在这样的函数依赖XY,X有一个真子集W,使得GXYUWY与G等价。无损分解设R是一个关系模式,F是R上的一个FD集,R分解成数据库模式。如果对R中满足F的每一个关系r,都有r在数据库中的各关系模式Ri上投影连接后仍为r,则称该数据库模式相对于F是无损分解的。泛关系假设在定义无损分解时,先假设存在泛关系r的情况下,再去谈论分解。Chase过程P79。保持函数依赖P80。1NF关系模式的每一个关系的属性值都是不可分的原子值。2NF关系模式是1NF,且每一个非主属性都完全函数依赖于候选键。3NF关系模式是1NF,且每一个非主属性都不传递依赖于候选键。BCNF关系模式是1NF,且每一个属性都不传递依赖于候选键。MVDP88。平凡的MVD对于属性集U上的MVD XY,如果YX或XYU。则此MVD是平凡的MVD。4NF设D是关系模式R上成立的FD和MVD的集合。如果D中每个非平凡的MVD XY的左部都是R的超键。3.2 试解释下面两个“数据冗余”的概念:l 文件系统中不可避免的“数据冗余”l 关系数据库设计中应尽量避免的“数据冗余”答:文件系统中的“数据冗余”:由于文件之间缺乏联系,造成每个应用程序都有相应的文件,有可能同样的数据在不同的文件中重复存储。关系数据库设计中的“数据冗余”:数据库某一关系中多个元组大量重复存储同样的属性值。3.3 关系模式的非形式化设计准则有哪几条?这些准则对数据库设计有什么帮助?答:、尽可能只包含有直接联系的属性,不要包含有间接联系的属性。(把有间接联系的属性包含在一个关系中,肯定会出现数据冗余和操作异常情况)。、尽可能使得关系不出现插入、删除、修改等操作异常。如出现异常,则要清楚地加以说明,保证更新数据库的应用程序正确操作。、尽可能使关系中避免放置经常为空值的属性。、尽可能使关系等值连接在主键和外键上进行,并保证连接后不会产生额外的元组。(如两个关系的连接匹配属性不是主键或外键,就可能产生额外元组)。3.16 什么是寄生元组?什么是悬挂元组?各是怎么产生的?答:在泛关系模式分解成数据库模式时,泛关系r在数据库模式中的每一个模式上投影再连接起来,比原关系r多出来的元组是寄生元组。在无泛关系假设时,对两个关系进行自然连接中被丢失的元组,被称为悬挂元组。产生原因略。3.18 试解释数据库“丢失信息”与“未丢失信息”两个概念。有什么区别?答:分解后是否表示一样的信息,如不一样就是“丢失信息”,否则就是“未丢失信息”。习题4关系运算4.1 名词解释无限关系无组数量无限多的关系。无穷验证验证一个公式时,必须对关系中所有元组进行验证。4.13 为什么要对关系代数表达式进行优化? 答:对于等价的关系表达式,因表达式中安排选择、投影、连接的顺序不同而执行效率大为不同。4.14 有哪三条启发式规则?对优化起什么作用?答:、尽可能早地执行选择操作。、尽可能早地执行投影操作。、避免直接做笛卡尔积。作用:合理安排操作顺序,可以花费较少的时间和空间。习题5SQL语言5.1 名词解释基本表是实际存储在数据库中的表。视图是由若干基本表和视图构成的表的定义。实表(略)。虚表在创建一个视图时,只是把视图的定义存储在数据字典中,而不存储视图定义的数据,在用户使用视图时才去求对应的数据。因此,视图被称为“虚表”。相关子查询连接查询嵌套查询导出表是执行了查询时产生的表。临时视图交互式SQLSQL语言在终端交互方式下使用,称为交互式SQL。嵌入式SQLSQL语言在语言的程序中使用,称为嵌入式SQL。游标是一个与某一查询结果相联系的符号名,是一个指针。卷游标可推进也可后退的游标。5.2 试叙述SELECT语句的关系代数特点和元组演算特点。 答:5.7 预处理方式对于嵌入式SQL的实现有什么重要意义? 答5.8 在主语言的程序中使用SQL语句有哪些规定?答:、在程序中要区分SQL语句和主语言语句。、允许嵌入的SQL语句引用主语言的程序变量。、SQL的集合处理方式与主语言的单记录处理方式之间的协调。5.9 SQL的集合处理方式和主语言单记录处理方式间如何协调? 答:通过游标机制,将集合操作转换成单记录处理方式。5.10 嵌入式SQL语句何时不必涉及到游标?何时必须涉及到游标?答:在执行INSERT、DELETE、UPDATE语句时和已知SELETE语句查询结果肯定是单元组时,可以不涉及游标。当SELETE语句查询结果为多个元组时必须涉及到游标。5.12 什么是存储过程?使用存储过程后,系统具有什么特点?答:存储过程是使用SQL语句和流程控制语句编写的模块,存储过程经编译和优化后存储在数据库服务器端的数据库中,使用时调用即可。使用存储过程具有以下优点:1) 提高运行速度;2) 增强了SQL的功能和灵活性;3) 可以降低网络的通信量;4) 减轻了程序编写工作量;5) 间接实现安全控制功能5.13 什么是SQL/PSM?这个标准中有哪些流程控制语句?答:SQL/PSM是SQL标准的一部分,它指定了如何编写持久存储模块,提供流程控制语句来表示过程处理的应用逻辑。有三种流程控制语句:顺序执行、条件分支语句、循环语句。习题6数据库管理6.1 名词解释事务是构成单一逻辑工作单元的操作集合,要么完整地执行,要么完全不执行。不论发生何种情况,DBS必须保证事务能正确、完整地执行。数据库的一致性事务运行结果必须保证数据库从一个一致性状态进入另一个一致性状态。数据库的可恢复性DBMS系统能把数据库从被破坏、不正确的状态,恢复到最近一个正确的状态的能力。并发操作多个事务同时对同一数据进行操作。封锁是一个与数据项有关的变量,相对于该数据项上可能的操作而言,锁描述了该数据项的状态。X锁排它型封锁。如果事务T对某个数据R实现了X锁,那么在T对R解锁前,不允许其它事务对R加任何类型的锁。S锁共享型封锁。如果事务T对某个数据R实现了S锁,仍允许其它事务对R加S锁,但R的所有S锁解除前,不允许任何事务对R加X锁。调度事务的执行次序。串行调度多个事务依次执行。并发调度利用分时的特点,同时处理多个事务。可串行化调度在每个事务在各种调度中语句的先后顺序不变的情况下,如果一个并发调度的执行结果与某一串行调度的执行结果等价,则这个并发调度称为可串行化调度。否则是不可串行化调度。6.2 事务的COMMIT语句和ROLLBACK语句各做什么事情?答:COMMIT语句提交事务对数据库的所有更新并释放X锁;ROLLBACK语句撤销事务对数据库的所有更新,使数据库恢复到事务执行前的状态,并释放X锁。6.3 试述事务的四个性质,并说明每一个性质由DBMS的哪个子系统实现?每一个性质对DBS有什么益处?答:事务的四个性质ACID:原子性:一个事务对数据库的所有操作,是一个不可分隔的工作单元。不会因事务交叉执行造成数据库的错误。一致性:一个事务独立执行的结果,就保证数据库的一致性。数据不会因事务的执行而遭受破坏。隔离性:多个事务并发执行时,系统保证这些事务先后单独执行时的结果一样。持久性:一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中。6.4 典型的数据库恢复策略是什么?答:P154(略)。6.5 DBS中有哪些类型的故障?哪些破坏了数据库,哪些没有但使其中的某些数据变得不正确? 答:事务故障(可以预期的事务故障、非预期的事务故障)、系统故障、介质故障。都破坏了数据库,事务故障和系统故障使其中的某些数据变得不正确。6.6 “检查点机制”的主要思想是什么?答:DBMS定时设置检查点,在检查点时刻才真正做到把对DB的修改写到磁盘,并在日志文件中写入一条检查点记录(以便恢复时使用)。当DB需要恢复时,根据日志文件仅对检查后的事务进行REDO、UNDO恢复操作。检查点机制大大减少了DB的恢复时间。6.7 什么是UNDO和REDO操作?为什么要这样设置?答:REDO处理的方法是:正向扫描日志文件,根据重做队列的记录对每一个重做事务重新实施对数据库的更新操作。UNDO处理的方法是:反向扫描日志文件,根据撤销队列的记录对每一个撤销队列的记录的更新操作执行逆操作。6.8 COMMIT操作和检查点操作有些什么联系?你认为应该如何恰当协调这两种操作才有利于DB的恢复? 答:(略)。6.9 数据库的并发操作会带来哪些问题?如何解决?答:丢失数据更新问题、读脏数据问题、不可重复读问题。通过加X锁、S锁解决。6.10 使用X锁和S锁时各有哪些操作?X锁和S锁间是如何协调的? 答:(略)。6.11 为什么X锁需保留到事务终点,而S锁可随时解除?答:在一个事务对数据加上X锁后,并且对数据进行了修改,如果过早地解锁,有可能使其它事务读取了未提交的数据(且随后被退回),引起丢失其它事务更新。因此X锁的解除应合并到事务的结束(COMMIT和ROLLBACK)操作中。S锁只允许读数据,所以S锁可以随时解除。6.12 什么是封锁的粒度?封锁粒度的大小对并发系统有什么影响?答:封锁的粒度封锁对象的大小。封锁粒度与系统的并发度和并发控制的开销密切相关。封锁粒度越大、并发度越小、系统开销越小;封锁粒度越小、并发度越高、系统开销越大。6.13 在封锁技术中,封锁协议可分哪三个级别?各解决了并发调度中的什么问题?答:一级封锁协议:事务在修改数据前加X锁,直到事务结束才释放。解决了丢失数据更新问题。二级封锁协议:事务在修改数据前加X锁,直到事务结束才释放。事务在读数据前加S锁,读完数据后立即释放S锁。解决了丢失更新问题、读脏数据问题。三级封锁协议:事务在修改数据前加X锁,直到事务结束才释放。事务在读数据前加S锁,直到事务结束时才释放。解决了丢失数据更新问题、读脏数据问题、不可重复读问题。6.14 试叙述“串行调度”与“可串行调度”的区别。 答:(略)。6.15 SQL中事务存取模式的定义和隔离级别的定义与数据库的并发控制有什么关系? 答:(略)。6.16 什么是数据库的完整性?DBMS的完整性子系统的主要功能是什么?答:是指数据的正确性、有效性、完整性。完整性子系统的主要功能:1. 监督事务的执行,并测试是否违反完整性规则。2. 如有违反现象,则采取恰当的操作:拒绝操作、报告违反情况、错误更改等。6.17 SQL中的完整性约束有哪些? 答:三大类:域约束、基本表约束(候选键定义、外键定义、“检查约束”定义)、断言。自考数据库系统原理 第一章 数据库系统基本概念 课后习题答案1.1名词解释(1) DB:即数据库(Database),是统一管理的相关数据的集合。 DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。 (2) DBMS:即数据库管理系统(Database Management System),是位于用户与操作系统之间的一层数据管理软件, 为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。 DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。 (3) DBS:即数据库系统(Database System),是实现有组织地、动态地存储大量关联数据, 方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。 (4) 1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然, 那么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。 (5) 1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系, 而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。 (6) M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系, 反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。 (7) 数据模型:模型是对现实世界的抽象。在数据库技术中,表示实体类型及实体类型间联系的模型称为“数据模型”。 它可分为两种类型:概念数据模型和结构数据模型。 (6) 概念数据模型:是独立于计算机系统的模型,完全不涉及信息在系统中的表示, 只是用来描述某个特定组织所关心的信息结构。 (9) 结构数据模型:是直接面向数据库的逻辑结构,是现实世界的第二层抽象。 这类模型涉及到计算机系统和数据库管理系统,所以称为“结构数据模型”。 结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。它主要有:层次、网状、关系三种模型。 (10) 层次模型:用树型结构表示实体类型及实体间联系的数据模型。 (11) 网状模型:用有向图结构表示实体类型及实体间联系的数据模型。 (12) 关系模型:是目前最流行的数据库模型。其主要特征是用二维表格结构表达实体集,用外键表示实体间联系。 关系模型是由若干个关系模式组成的集合。 (13) 概念模式:是数据库中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。 概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性、安全性等要求。 (14) 外模式:是用户与数据库系统的接口,是用户用到的那部分数据的描述。 (15) 内模式:是数据库在物理存储方面的描述,定义所有的内部记录类型、索引和文件的组成方式, 以及数据控制方面的细节。 (16) 模式/内模式映象:这个映象存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性, 即概念记录和内部记录间的对应性。此映象一般在内模式中描述。 (17) 外模式/模式映象:这人映象存在于外部级和概念级之间,用于定义外模式和概念模式间的对应性, 即外部记录和内部记录间的对应性。此映象都是在外模式中描述。 (18) 数据独立性:在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。 数据独立性分成物理数据独立性和逻辑数据独立性两级。 (19) 物理数据独立性:如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化, 那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。也就是对模式的修改尽量不影响概念模式。 (20) 逻辑数据独立性:如果数据库的概念模式要进行修改(如增加记录类型或增加数据项), 那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。 也就是对概念模式的修改尽量不影响外模式和应用程序。 (21) 宿主语言:在数据库技术中,编写应用程序的语言仍然是一些高级程序设计语言, 这些语言称为宿主语言(host language),简称主语言。 (22) DDL:数据定义语言(Data Definition Language),用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映象,定义数据的完整性、安全控制等约束。 (23) DML:数据操纵语言(Data Manipulation Language),由DBMS提供,用于让用户或程序员使用,实现对数据库中数据的操作。 DML分成交互型DML和嵌入型DML两类。依据语言的级别,DML又可分成过程性DML和非过程性DML两种。 (24) 交互型DML:如果DML自成系统,可在终端上直接对数据库进行操作,这种DML称为交互型DML。 (25) 嵌入型DML:如果DML嵌入在主语言中使用,此时主语言是经过扩充能处理DML语句的语言,这种DML称为嵌入型DML。 (26) 过程性DML:用户编程时,不仅需要指出“做什么”(需要什么样的数据),还需要指出“怎么做”(怎么获得数据)。层状、网状的DML属于过程性语言。 (27) 非过程性DML:用户编程时,只需要指出“做什么”,不需要指出“怎么做”。 Notice:以上关于DML的各个概念单独出现时,首先要解释DML的含义。 (28) DD:数据字典(Data Dictionary),数据库系统中存放三级结构定义的数据库称为数据字典。 对数据库的操作都要通过访问DD才能实现。 (29) DD系统:管理DD的实用程序称为“DD系统”。 1.2 文件系统阶段的数据管理有些什么缺陷?试举例说明。 文件系统有三个缺陷: (1)数据冗余性(redundancy)。由于文件之间缺乏联系,造成每个应用程序都有对应的文件, 有可能同样的数据在多个文件中重复存储。 (2)数据不一致性(inconsistency)。这往往是由数据冗余造成的,在进行更新操作时,稍不谨慎, 就可能使同样的数据在不同的文件中不一样。 (3)数据联系弱(poor data relationship)。这是由文件之间相互独立,缺乏联系造成的。 1.3数据库阶段的数据管理有些什么特点? (1) 采用复杂的数据模型表示数据结构 (2) 有较高的数据独立性(数据结构分成用户的逻辑结构、整体逻辑结构和物理结构三级) (3) 数据库系统为用户提供方便的用户接口,可以使用查询语言、终端命令或程序方式操作数据, 也可以用程序方式操作数据库。 (4) 系统提供了四个方面的数据控制功能:数据库的恢复、并发控制、数据完整性和数据安全性, 以保证数据库中数据是安全的、正确的和可靠的。 (5) 对数据的操作不一定以记录为单位,还可以数据项为单位,增加了系统的灵活性。 1.4你怎样理解实体、属性、记录、字段这些概念的类型和值的差别?试举例说明。 实体(entity):是指客观存在可以相互区别的事物。实体可以是具体的对象,如:一个学生,一辆汽车等; 也可以是抽象的事件,如:一次借书、一场足球赛等。 属性(attribute):实体有很多特性,每一个特性称为属性。每个属性有一个值域, 其类型可以是整数型、实数型、字符串型。比如,学生(实体)有学号、姓名、年龄、性别等属性, 相应值域为字符、字符串、整数和字符串型。 字段(field):标记实体属性的命名单位称为字段或数据项。它是可以命名的最小信息单位, 所以又称为数据元素或初等项。字段的命名往往和属性名相同,比如,学生有学号、姓名、年龄、性别等字段。 记录(record):字段的有序集合称为记录。一般用一个记录描述一个实体, 所以记录又可以定义为能完整地描述一个实体的字段集。如:一个学生记录,由有序的字段集(学号、姓名、年龄、性别等)组成。 1.5逻辑记录与物理记录,逻辑文件与物理文件有些什么联系和区别? 联系: (1)逻辑记录与物理记录都是记录,是字段的有序集合; (2)逻辑文件与物理文件都是文件,是同一类记录的汇集。 区别: (1)逻辑记录与逻辑文件是逻辑数据描述,物理记录与物理文件是物理数据描述。 (2)物理数据描述是指数据在存储设备上的存储方式,物理记录、物理文件(还有物理联系、物理结构等术语), 都是用来描述实际存储设备上的数据。 (3)逻辑数据描述是指程序员或用户用以操作的数据形式,是抽象的概念化数据。 逻辑记录、逻辑文件(还有逻辑联系、逻辑结构等术语),都是用户观点的数据描述。 1.6为某百货公司设计一个ER模型。 百货管辖若干个连锁商店,每家商店经营若干商品, 每家商店有若干职工,但每个职工只能服务于一家商店。实体类型“商店”的属性有:商店编号,店名,店址,店经理。 实体类型“商品”的属性有:商品编号,商品名,单价,产地。实体类型“职工”的属性有:职工编号,职工名,性别,工资。 在联系中应反映出职工参加某商店工作的开始时间,商店销售商品的月销售量。 试画出反映商店、商品、职工实体类型及联系类型的ER图,并将其转换成关系模式集。 实体:商店(商店编号,店名,店址,店经理) 商品(商品编号,商品名,单价,产地) 职工(职工编号,职工名,性别,工资) 联系:SC(商店商品之间1:N的联系,联系属性为“职工参加商店工作的开始时间”。 SE(商店职工之间1:N的联系),联系属性为“月销售量”。 ER图: 关系模式集:商店模式(商店编号,店名,店址,店经理) 商品模式(商品编号,商品名,单价,产地,商店编号,月销售量) 职工模式(职工编号,职工名,性别,工资,商店编号,开始时间) 1.7试述ER模型、层次模型、网状模型、关系模型和面向对象模型的主要特点。 ER模型的主要特点: (1)优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。 (2)缺点:只能说明实体间语义的联系,不能进一步说明详细的数据结构。 层次模型的特点: (1)优点:记录之间的联系通过指针实现,查询效率较高。 (2)缺点:只能表示1:N联系,实现M:N结构较复杂;由于层次顺序的严格和复杂,引起数据的查询和更新操作也很复杂。 网状模型的特点: (1)优点:记录之间联系通过指针实现,M:N联系也容易实现(每个M:N联系可拆成两个1:N联系),查询效率较高。 (2)缺点:编写应用程序比较复杂,程序员必须熟悉数据库的逻辑结构。 关系模型的特点: 用关键码而不是用指针导航数据,表格简单,用户易懂,编程时并不涉及存储结构、访问技术等细节。 1.8试述概念模式在数据库结构中的重要地位。 概念模式是数据库中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。 概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性、安全性等要求。 数据按外模式的描述提供给用户,按内模式的描述存储在磁盘中,而概念模式提供了连接这两级的相对稳定的中间观点, 并使得两级的任何一级的改变都不受另一级的牵制。 1.9数据独立性与数据联系这两个概念有什么区别? 数据独立性是指应用程序与数据之间相互独立,不受影响。 数据联系是指同一记录内部各字段间的联系,以及记录之间的联系。 1.10试述DBMS在用户访问数据库过程中所起的作用. 用户对数据库进行操作,DBMS把操作从应用程序带到外部级、概念级、再导向内部级,进而操作存储器中的数据。 (结合P22“用户访问数据的过程”来理解) 1.11试述DBMS的主要功能。 DBMS的主要功能有: (1)数据库的定义功能 (2)数据库的操纵功能 (3)数据库的保护功能 (4)数据库的存储管理 (5)数据库的维护功能 (6)数据字典 1.12试叙DBMS对数据库的保护功能。 DBMS对数据库的保护主要通过四个方面实现: (1)数据库的恢复。 (2)数据库的并发控制。 (3)数据库的完整性控制。 (4)数据库的安全性控制。 1.13试叙DBMS对数据库的维护功能。 DBMS中有一些程序提供给数据库管理员运行数据库系统时使用,这些程序起着数据库维护的功能。 主要有四个实用程序: (1)数据装载程序(loading) (2)备份程序(backup) (3)文件重组织程序 (4)性能监控程序 1.14从模块结构看,DBMS由哪些部分组成? 从模块结构看,DBMS由两大部分组成:查询处理器和存储管理器 (1)查询处理器有四个主要成分:DDL编译器,DML编译器,嵌入型DML的预编译器,查询运行核心程序 (2)存储管理器有四个主要成分:授权和完整性管理器,事务管理器,文件管理器,缓冲区管理器 (以上几题具体可参照书上p20-21) 1.15DBS由哪几个部分组成? DBS由四部分组成:数据库、硬件、软件、数据库管理员。 1.16什么样的人是DBA?DBA应具有什么素质?DBA的职责是什么? DBA是控制数据整体结构的人,负责DBS的正常运行。DBA可以是一个人,在大型系统中也可以是由几个人组成的小组。 DBA承担创建、监控和维护整个数据库结构的责任。 DBA应具有下列素质: (1)熟悉企业全部数据的性质和用途; (2)对用户的需求有充分的了解; (3)对系统的性能非常熟悉。 DBA的主要职责有五点: (1)概念模式定义 (2)内模式定义 (3)根据要求修改数据库的概念模式和内模式 (4)对数据库访问的授权 (5)完整性约束的说明 1.17 试对DBS的全局结构作详细解释。 参照教材p24-25。 1.18使用DBS的用户有哪几类? 使用DBS的用户有四类: 1)DBA 2)专业用户 3)应用程序员 4)最终用户 1.19 DBMS的查询处理器有哪些功能? DBMS的查询处理器可分成四个成分: 1)DML编译器 2)嵌入型DML的预编译器 3)DDL编译器 4)查询运行核心程序 (各成分功能参照P24) 1.20DBMS的存储处理器有哪些功能? DBMS的存储处理器提供了应用程序访问数据库中数据的界面,可分成四个成分: 1)授权和完整性管理器 2)事务管理器 3)文件管理器 4)缓冲区管理器 (各成分功能参照P25) 1.21 磁盘存储器中有哪四类主要的数据结构? 数据文件:存储了数据库中的数据;
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 机械制造 > 工业自动化


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!