自考数据库系原理课后答案_第1页
自考数据库系原理课后答案_第2页
自考数据库系原理课后答案_第3页
自考数据库系原理课后答案_第4页
自考数据库系原理课后答案_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、第六章课后习题答案 6.2事务的COMMIT语句和ROLLBACK语句各做什么事情? p152 答:COMMIT语句表示事务执行成功的结束,此时告诉系统,数据库要进入一个新的正确状态,该事务对数据库的所有更新 都已交付实施;ROLLBACK语句操作表示事务不成功的结束,此时告诉系统,已发生错误,数据库可能处在不正确的状态, 该事务对数据库的更新必须撤销,数据库应该恢复该事务到初始状态。 6.3试述事务的四个性质,并说明每一个性质由DBMS的哪个子系统实现?每一个性质对数据库系统有什么益处? 答:原子性:一个事务对数据库的所有操作,是一个不可分割的工作单元,这些操作要么全部执行,要么什么也不做(

2、由 DBMS的事务管理子系统来实现); 一致性:一个事务独立执行的结果,应(由DBMS的完整性子系统执行测试任务); 隔离性(由DBMS的并发控制子系统实现); 持久性(由DBMS的恢复管理子系统实现的)。 6.4 典型的数据库恢复策略是什么? 答:( 1 )平时做好两件事 转储和建立日志。 ( 2)一旦发生故障,分两种情况处理:一是如果数据库遇到灾难性故障,利用数据库备份和日志执库行redo 已提交的事 务,把数据库恢复到事故前的状态。二是如果数据库只是破坏了数据的一致性,利用日志库undo 不可靠的修改, redo 已 提交的缓冲区中的事务。 6.5 DBS中有哪些类型的故障?哪些故障破坏

3、了数据库?哪些没有破坏DB,但其中的数据变的不正确? 答:有事务故障(不破坏数据库) ;系统故障(为破坏数据库,但其中某些数据变得不正确) ;介质故障 (破坏数据库 )。 6.6 检查点机制的主要思想是什么 ? 答:在DBS运行时,数据库管理系统定时设置检查点。在检查点时刻才真正做到把对数据库的修改写到磁盘,并在日志文 件上写入一条检查点记录(以便恢复用)数据库需要恢复时,只有在检查点后面的那些事务需要恢复,一般DBMS产品自 动实行检查点操作,无须人为干预。 6.7 什么是 undo 操作和 redo 操作?为什么要这样设置? 答: undo 操作是反向扫描日志文件,撤销对数据库的更新操作,

4、使数据库恢复到更新前的状态; Redo 操作正向扫描日志文件,重新做一次更新,使数据库恢复到更新后的状态。 6.8 COMMIT操作和检查点时的操作有什么联系?你认为应该如何恰当协调这两种操作才有利于DB的恢复? 答:在采用检查点方法的基本恢复算法中根据日志文件,建立事务重做对列和事务撤销队列,此时。从头扫描日志文件, 找出在故障前已经提交的事务(这些事务执行了COMMIT操作),将其事务标识记入重做队列。 同时还要找出故障发生时尚未完成的事务(这些事务还未执行COMMIT),将其事务标识记入撤销队列。 6.9 数据库的并发操作会带来哪些问题?如何解决? 答:丢失更新问题;度脏数据问题;不可重

5、复读问题。 解决的方法是用封锁机制。 6.10用X锁和S锁时各有哪些操作? x锁和s锁时如何协调的? 答: x 锁: 申请 X 锁操作“ X FIND R” 接触 X 锁操作“ X RELEASE”R S锁: 申请 s 锁操作“ S FIND R” 升级和写操作“ UPDX R” 解除s锁操作“ SRELEASE”获准s锁的事务只能读数据,不能更新数据,若要更新则先把s锁升级为x锁。 6.11为什么x锁要保留到事务终点,而 s锁可随时解除? 答:在一个事务上对数据加上 x 锁后,并且对数据进行了修改,如果过早的解除 x 锁,有可能使其他事物读了未提交的数 据,引起丢失其他事务的更新;由于s锁只

6、允许读数据,因此解除 s锁的操作不必等到事务的结束,可随时根据需要接触 s锁。 6.12 什么是封锁粒度?封锁粒度的大小对并发系统有什么影响 ? 答:封锁对象的大小称为封锁粒度。 封锁粒度与系统的并发度和并发控制的开锁密切相关, 封锁的粒度越大并发度也就越小, 同时系统的开销也就越小; 相反, 封锁粒度越小,并发度就越大,系统的开销也就越大。 6.13 在封锁技术中,封锁协议可成哪三个级别?各解决了并发调度中的什么问题? 答:封锁协议分为一级封锁协议,解决了“丢失修改” ; 二级封锁协议,解决了“丢失修改、读脏数据” ; 三级封锁协议,解决了“丢失修改、度脏数据、不可重复读” 。 6.14 试

7、述 串行调度 与 可串行化调度 的区别? 答:如果有n个事务串行调度,可有n!种不同的有效调度。事务串行调度的结果都是正确的,至于依照何种次序执行, 视外界环境而定,系统无法预料;而可串行化调度每个事务中语句的先后顺序在各种调度中始终保持一致,在这个前提下 如果一个并发调度的执行结果与某一串行调度的执行结果等价。 6.16 什么是数据库的完整性? DBMS 的完整性子系统的主要功能是什么? 答:数据库中完整性一词指数据的正确性、有效性和相容性,防止错误的数据进入数据库。 子系统的主要功能有: 监督事务的执行, 并测试是否违反完整性规则; 若有违反现象, 则采取恰当的操作, 例如拒绝操作, 报告

8、违反情况,改正错误等方法来处理。 6.17 SQL中的完整性约束有哪些? 答:域约束、基本表约束、断言。 6.18参照完整性规则在 SQL中可以用哪几种方法实现? 答: no action (默认) , cascade, restrict , set null 或 set default 。 6.19 删除参照关系的元组时,对依赖关系有哪些影响?修改参照关系的主键时,对依赖关系有哪些影响? 答: 1、删除参照表中元组时的考虑: No action :对依赖表没有影响。 Cascade将依赖表中所有外键值与参照表中要删除的主键值相对应的元组一起删除。 Restrict :只有当依赖表中没有一个外

9、键值与要删除的参照表中主键值相对应删除。 Set n ull:删除参照表中元组时,将依赖表中所有与参照表中被删除的主键值相对应的外键值均置为空。 Set default:删除参照表中元组时,将依赖表中所有与参照表中被删除的主键值相对应的外键值均置为预先定义好的默认 值。 修改参照表中主键时的考虑: No action :对依赖表没有影响。 Cascade将依赖表与参与表中要修改的主键值相对应的所有外键值一起修改。 Restrict :只有当依赖表中没有外键值与参照表中要修改的主键值相对应时,系统才修改参照表中主键值,否则拒绝此修改 操作。 Set null:修改参照表中主键时,将依赖表中所有与

10、这个主键值相对应的外键值均置为空值。 Set default :修改参照表中主键时,将依赖表中所有与这个主键值相对应的外键值均置为预先定义好的默认值。 6.23 什么是触发器?触发器有那两个级别?个同于什么场合? 触发器是一个能由系统自动执行对数据库修改的语句。触发器有时也称主动规则或事件-条件-动作规则。 两个级别:元组集触发器和语句集触发器 6.24 什么是数据库的安全性?有哪些级别的安全措施? 数据库的安全性是指保护数据库,纺织部合法的使用,以免数据的泄密,更改或破坏。 1环境级2职员级3 OS级4网络级5 DBS级 6.26 什么是权限?用户访问数据库有哪些权限?对数据库模式有哪些修改

11、权限? 答:用户(应用程序)使用数据库的方式成为权限。 访问数据库有四个权限:读(read)权限、插入(insert )、修改(update )、删除(delete); 修改数据库模式也有四个权限:索引(index)权限:允许用户创建和删除索引。 资源(resource)权限:允许用户创建新的关系。 修改( alteration )权限:允许用户在关系结构中加入或删除属性。 撤销(drop):允许用户撤销关系。 6.27 SQL的视图机制有哪些优点? 答:有三个优点:数据安全性、逻辑数据独立性、操作简便性。 6.28 SQL2中的用户权限有哪几类? 答: select、 insert、 del

12、ete、 update 、 references、 usage。 6.29试述SQL中用户跟角色这两个概念? 答:在SQL中用户是实际的人或是访问数据库的应用程序;而角色是一组有相同权限的用户,实际上角色是属于目录一级 的概念。 6.30 安全性措施中强制存取控制是如何实现的? 答:对每个数据对象赋予一定的密级,级别从高低有:绝密级、机密级、秘密级、公用级,每个用户也具有相应的级别, 称为许可证级别,密级和许可证级别都是有序的,如绝密机密 秘密公用,采用规则是:一是用户只能查看比它级别低 或是同级的数据,二是用户只能修改和它同级的数据。 第七章 7.1 SQL Server 2000 的版本有

13、哪四种?各自的适用范围是什么? 答:企业版:作为生产数据库服务器使用。 标准版:作为小工作组或部门的数据库服务器使用。 个人版:供移动的用户使用,这些用户又是从网络上断开,但所运行的应用程序需要SQL Server数据存储。 开发版:供程序员来开发将SQL Server 2000用作数据存储的应用程序。只能将开发版作为开发和测试系统使 用,不能作为生产服务器使用。 7.2 在安装 SQL Server 2000 时,安装程序会自动创建哪些系统数据库和范例数据库?这些数据库各有哪些用途? 答:安装数据库会自动创建 4个系统数据库(Master、Model、Msdb、Tempdb和两个范例数据库(

14、Northwind、Pubs). Master数据库:记录了所有SQL Server 2000的系统信息、登陆账号、系统配置设置、系统中所有数据库及其系统信 息和存储介质信息。 Model数据库:是SQL Server 2000为用户创建数据库提供的模板数据库,每个新建的数据库都是在一个Model数据 库的副本上扩展而生成的,所以对Model数据库的修改一定要小心。 Msdb数据库:主要用于SQL Server 2000存储任务计划信息、事件处理信息、备份恢复信息以及异常报告等。 Tempdb数据库:存放所有临时表和临时的存储程序,并且供SQL Server 2000存放目前使用的表中,它是一

15、个全局 的资源,临时表和存储程序可供所有用户使用。每次 SQL Server 2000 启动时它会自动重建并且重设为默认大小,使用中 它会依需求自动增长。 Northwind数据库:是SQL Server 2000提供的范例数据库,它包含一个称为Northwind Traders 公司的销售数据库。 Pubs数据库:也是一个SQL Server 2000提供的范例数据库,它包含一个书籍出版公司的数据库范例。 7.3 SQL Server 2000 中主要有哪些工具?各有哪些功能? 答:查询分析器;执行 T-SQL的最佳轻量级工具,是最重要的工具之一。 导入和导出数据:提供了导入、到处以及在SQ

16、L Server 2000和OLE DB ODB及文件间转换数据的功能。 服务管理器:可以用来启动和停止SQL Server的主要服务和指示其当前状态。 服务器网络实用工具:是 SQL Server 2000服务器端的网络配置界面,能够配置SQL Server与用户的通信方式。 客户端网络实用工具:可以用来配置客户端-服务器端的链接。 链接丛书:提供了联机文档,包括有关操作的说明。 企业管理器:用来管理数据库的应用程序,是最重要的工具之一。 事件探查器 : 可以监察 SQL Server 的运行情况和时间,并将选定的信息显示在屏幕上,或记录在表、文件之中。 在IIS中配置SQL XM支持:可以

17、用来配置 SQL Server 2000中的XML支持功能。 7.4 什么是服务管理器?有哪些优点? 答:服务管理器可以用来启动、暂停和停止SQL Server的服务,在没有启动 SQL Server服务时不能进行数据库操作。 优点:是一种DB/工具,使用它可以启动指定的 SQL Server实例与进程。 提供了在任意服务器上启动和停止任意SQL Server 进程的简便方法。 提供了对于 SQL Server 进程运行状态的可视化指示。 7.5 什么是查询分析器?有哪些优点? 答:查询分析器提供了图形界面来执行一个或多个T-SQL语句。 用户以文件的方式编辑 T-SQL语句,然后发送给服务器

18、,并接受执行的结果。使用这个工具,用户可以交互的设计 和测试T-SQL语句、批处理和脚本。 7.6 什么是企业管理器?有哪些优点? 答:企业管理器是用户管理 SQL Server 2000 的主要工具和图形界面。 在企业管理器中可以完成几乎所有的管理工作;也能够连接或者注册多个SQL Server的实例,从而减少管理不同服务 器的工作。 7.7 什么是存储过程?有哪些优点? 答:存储过程是存放在服务器上预编译好的SQI语句。 其优点主要有提供了安全机制、改进了执行性能、减少了网络流量和执行代码的重要性。 7.8 什么是触发器?有哪些优点? 答:触发器是 SQL Server 是程序员和数据分析

19、员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程。 触发器的开销非常低,运行触发器所占用的时间主要花费在引用其他存于内存或磁盘上的表上,使用触发器还可以使用自 定义的错误信息,实现多表的级联修改等功能。 7.9 什么是用户自定义函数?有哪些优点和缺点? 答: SQLServer 2000允许用户创建自己的自定义函数。其同时具有试图和存储过程的优点,它可以像试图一样用在select 语句的 from 子句中,而且它还可以接受参数。缺点是牺牲了可移植性。 7.11 在数据库的导入和导出工作的功能是什么? 答: 它可以完成多个数据库之间的数据转移和转换。 7.12 用户在访问 SQL

20、Server 数据库的数据,必须经过哪三个认证过程? 答身份验证; 验证用户是否是该数据库的合法用户; 当用户操作数据库中的数据或对象时,他必须具有所要进行操作的操作权; 7.13 SQL Server 2000 中,有哪两种身份认证模式? 答: windows 身份验证模式和混合验证模式。 7.14 什么是角色?其作用是什么? 答:具有相同权限的用户就称为角色。其作用是:有了角色就不用直接管理每个具体的数据库权限,而只将数据库用户放 到合适的角色即可,当工作发生变化时,只要更改角色的权限无需改变角色中的成员。 7.15 什么是 T-SQL? 答:由于标准的SQL的DM只能用于修改或返回数据,

21、没有提供用于开发过程和算法的编程结构,也没有包含用于控制 和调整数据库专用的命令。所以每种功能完备的数据库产品必须使用一些各自专有的SQI语言扩展来弥补SQL标准的一些不 足之处,在SQL Server中这种扩展称为 Transact-SQL,简称T-SQL; 7.16 试解释下列名词:临时表、局部临时表、全局临时表、表变量。 答:临时表:是临时的适合用来在不同的对象之间传递数据或者为临时的任务短时间保存数据; 局部临时表:创建时必须使用由字符“#”开头的表名; 全局临时表:创建时必须使用由两个字符“#”开头的表名; 表变量:类似于临时表,优点在于它存于内存中表变量和变量有相同的作用域和生命周

22、期; 第八章 8.1 PowerBuilder 有哪些特点? 答:采用面向对象的编程方法和事件驱动的工作原理; 支持跨平台开发,具有开放的数据库连接系统; 无须记住各种语句格式即可轻松编写语句; 人性化设计,大大提高了程序员的编程效率; 独特的库文件画板和层次清晰的系统资源树; 系统提供 11种不同“显示风格”的数据窗口,以满足不同用户的需求; 提供了规范化的工作空间对象,让程序员更方便的管理创建的应用对象; 8.2PowerBuilder 9.0 的开发空间有那三个层次? 答:工作空间、目标和库文件; 8.3 什么是“数据窗口”?他有什么特点? 答:数据窗口是一个对象,它包含了对数据库中数据

23、进行特定操作的信息。只要定义好一个数据窗口对象,以后就可 以在多个应用程序中使用该数据窗口对象;数据窗口式封装了对数据库中数据操作的对象,他极大的方便了应用程序对数 据库的使用;数据窗口是一个智能化的窗口,在数据窗口中,用户不必使用SQL语句就可以对数据库进行查询、插入、删 除和修改操作。 第九章 1. 在面向对象技术中有哪些基本数据类型?有哪些复合数据类型? 基本数据类型:浮点型,字符,字符串,布尔型,枚举型。 复合数据类型:行类型,数组类型,列表类型,包类型,集合类型。 2. 什么是对象联系图?图中椭圆,小圆圈,单箭头,双箭头,双线箭头,双向箭头这些结构各代表什么含义? 对象联系图是对ER

24、图的扩充,在数据结构之间允许嵌套和递归,能够真实地反映现实世界数据之间的各种联系。 1)椭圆代表对象类型(相当于试题类型) 2)小圆圈表示属性是基本数据类型(整型,实型,字符串型) 3)单箭头表示属性值是单值(属性可以是基本数据类型,也可以是另一个对象类型) 4)双箭头表示属性值是多值(属性可以是基本数据类型,也可以是另一个对象类型) 5) 双线箭头表示对象类型之间超类与子类联系。(从子类指向超类) 6)双向箭头表示两个属性之间值的联系为逆联系。 3. 什么是 UML? UML 适用于各类系统的建模,为了实现这种大范围应用能力,UML 被定义成比较粗放和具有普遍性,以满足不同系统 的建模。通过

25、提供不同类型生动的图, UML 能表达系统多方面的透视,这些图有类图,用例图,状态图,组件图等9 种。 4. 类图:描述了系统的静态结构,包括类和类图间联系。 类被表示为三个部分组成的方框。 对象是类的实例。 关联是对类的实例之间联系的命名,相当于ER模型中的联系类型。 联系元数:与关联有关的类的个数,称为关联元数或度数。 关联角色:关联的端部,也就是与关联相连的类,称为关联角色。 重复度:重复度是指在一个给定的联系中有多少对象参与,即关联角色的重复度。 关联类:类图中关联本身也可以有属性或自己的操作,称为“关联类”,在类图中关联类用虚线与关联线相连。 抽象类是一种没有直接对象,但他的子孙可以

26、有直接对象的类。 具体类是指有直接对象的类。 概化:从子类到超类的抽象化过程。 特化:从超类到子类的具体化过程。 聚合表达了成分对象和聚合对象之间的“is part of”(一部分)的联系,聚合实际上是一种较强的形式的关联联系,在 类图中,用空的菱形表示。 复合:一种较强形式的聚合,用实心菱形表示。 5类图中的重复度与 ER图中实体的基数有什么异同? 重复度类似于ER模型中实体基数的概念。但这是两个相反的概念。实体基数是指与一个实体有联系的另一端实体数目 的最小、最大值,基数应写在这一端实体的边上。而重复度是指参与关联的这一端对象数目的最小、最大值,重复度 应写在这一端类的边上。 8.0DBC

27、技术与传统的数据库编程方式有什么区别/ 传统的数据编程方式是“主语言+DML”。虽然ANSI和ISO定义了关系数据库查询语言标准SQL,但是在ODBC技术出现 之前,一个特定的前端应用却不能访问不同数据库服务器上的数据。 各厂商的SQL版本不同,每个 RDBMS厂商都对标准 SQL进行了独特的扩充或解释,使得不同的RDBMS提供的SQL互 不兼容。 不同厂商的RDBMS在客户机与数据库服务器之间使用了不同的通信协议。 而与此同时,RDBMS产品却迅速增加,因此有必要建立一个公共的、与数据无关的应用程序设计接口。所谓公共接口 API 就是为开发者提供单一的编程接口,这样同一个应用程序就可以访问不

28、同的数据库服务器。 9.ODBC技术有什么作用?其卓越贡献是什么? ODBC为应用程序提供了一套 CLI函数库和基于 DLL的运行支持环境。 CLI:Call-Level In terface 调用层接口 DLL:Dynamic Link Library, 动态链接库 ODBC的卓越贡献是使用应用程序具有良好的互用性和可移植性,并且具备同时访问多种 DBS的功能,从而克服了传统 数据库应用程序的缺陷。对用户来说,ODBS驱动程序屏蔽掉了不同 DBS的差异。 10.ODBC的体系结构有哪几层 ?试述各层之间的联系。 ODBC是一个分层体系结构,由纵向四部分构成, ODBC数据库应用程序:用宿主语

29、言和ODBC函数编写的应用程序用于访问数据库。 驱动程序管理器:为应用程序加载、调用和卸载DB驱动程序。 DB驱动程序:处理 ODBC函数,想数据源提交用户请求执行的SQL语句。 数据源:是 DB驱动程序与DBS之间连接的命名。 11.ODBC数据应用程序的主要功能是什么?主要完成哪些任务? 应用程序的主要功能是:调用ODBC函数,递交SQL语句给DBMS,检索出结果,并进行处理。应用程序要完成ODBC 外部接口的所有工作。 应用程序主要完成以下 8个任务: 连接数据库 向数据源发送SQL语句 为SQL语句执行结果分配存储空间,定义所读取的数据格式 读取结果 处理错误 向用户提交处理结果 请求事务的提交和回退操作 断开与数据源的连接 12. 什么是驱动程序管理器?驱动程序管理器的主要功能是什么? 驱动程序管理器是一个动态链接库,用于连接各种DBS的DBMS驱动程序,管理应用程序和DBMS驱动程序之间的交 互作用。 驱动管理器的主要功能是 ; 为应用程序加载 DBMS驱动程序 检查ODBC调用参数的合法性和记录 ODBC函数的调用 为不同驱动程序的 ODBC函数提供单一的入口 调用正确的 DBMS

温馨提示

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

最新文档

评论

0/150

提交评论