2018年河南科技大学林学院341农业知识综合三[专业硕士]之数据库系统概论考研强化五套模拟题
● 摘要
一、简答题
1. DBS 中有哪些类型的故障?哪些故障破坏了数据库?哪些故障未破坏数据库,但使其中某些数据变得不正确?
【答案】(1)数据库系统中的故障主要有:事务故障、系统故障、介质故障。
(2)破坏了数据库的故障是介质故障;未破坏数据库,但使其中某些数据变得不正确的故障是事务故障和系统故障。
2. 设教学数据库的模式如下:
试用多种方式定义下列完整性约束:
(1)在关系S 中插入的学生年龄值在16〜25之间。
(2)在关系SC 中插入元组时,其值和C#值必须分别在S 和C 中出现。
(3)在关系SC 中修改GRADE 值时,必须仍在0〜100之间。
(4)在删除关系C 中一个元组时,首先要把关系SC 中具有同样C#值的元组全部删去。 (5)在关系S 中把某个
为新值。
【答案】(1)用检查子句定义:
(2)在关系SC 的定义中,用检查子句定义:
在关系SC 的定义中,用外码子句定义:
(3)在关系SC 的定义中,用检查子句定义:
(4)在关系SC 中,可用外码子句定义:
(5)在关系SC 中,可用外码子句定义:
值修改为新值时,必须同时把关系SC 中那些同样的值也修改
3. 叙述数据库中死锁产生的原因和解决死锁的方法。
【答案】(1)死锁产生的原因:封锁可以引起死锁。比如事务封锁了数据A ,事务
了数据B 。
但A 己被
成了死锁。
(2)解决死锁的常用方法有如下3种:
①要求每个事务一次就要将它所需要的数据全部加锁。
②预先规定一个封锁顺序,所有的事务都要按这个顺序实行封锁。
③允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤消,释放此事务持有的所有锁,使其他事务能继续运行下去。
4. 数据库管理系统的主要功能有哪些?
【答案】数据库管理系统的主要功能有:
(1)数据库定义功能。DBMS 提供数据定义语言(Data Definition Language,DDL ), 用户通过它可以方便地对数据库中的数据对象进行定义。
(2)数据组织、存储和管理功能。通过对数据的组织和存储提高存储空间利用率和方便存取,数据库管理系统提供多种存取方法(如索引查找、Hash 查找、顺序查找等)来提高存取效率。
(3)数据操纵功能。DBMS 还提供数据操纵语言(Data Manipulation Language, DML ),用户可以使用DML 操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改等。
(4)数据库的事务管理和运行管理。数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
(5)数据库的建立和维护功能。数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。这些功能通常是由一些实用程序或管理工具完成的。
(6)其他功能。例如DBMS 与网络中其他软件系统的通信功能;一个DBMS 与另一个DBMS 或文件系统的数据转换功能;异构数据库之间的互访和互操作功能等。
5. 数据库中要存储和管理的数据内容包括哪些方面?
【答案】数据库系统中数据的物理组织必须体现实体之间的联系,支持数据库的逻辑结构——各种数据模型。因此数据库中要存储4个方面的数据:
(1)数据描述,即数据的外模式、模式、内模式;
(2)数据本身;
(3)数据之间的联系;
(4)存取路径。
封锁又申 请封锁数据B ,但因B 被封锁,所以也处于等待状态。这样,封锁,所以和只能等待。又申请封锁数据A , 处于相互等待状态而均不能结束,这就形
6. 试述关系模型的3个组成部分。
【答案】关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
(1)关系数据结构:在关系模型中,现实世界的实体以及实体间的各种联系均用单一的结构类型即关系来表示。
(2)关系操作集合:关系模型中常用的关系操作包括查询操作和插入、删除、修改操作。 (3)关系完整性约束:关系模型中有实体完整性约束、参照完整性约束和用户定义的完整性约束三类约束。
7. 什么是封锁?基本的封锁类型有几种?试述它们的含义。
【答案】(1)封锁是指事务T 在对某个数据对象(例如表、记录等)进行操作之前,先向系统发出请求,对其加锁。加锁后,事务T 就对该数据对象有控制权,在事务T 释放锁之前,其他事务不能更新此数据对象。
(2)基本的封锁类型有两种:排它锁(简称X 锁)和共享锁(简称S 锁)。
①排它锁又称为写锁。若事务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 做任何修改。
8. 定义并解释概念模型中以下术语:实体,实体型,实体集,属性,码,实体联系图(E-R 图)
【答案】(1)实体:客观存在并可以相互区分的事物。
(2)实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体。
(3)实体集:同型实体的集合。
(4)属性:表中的一列即为一个属性。
(5)码:码就是能唯一标识实体的属性,他是整个实体集的性质,而不是单个实体的性质。
(6)实体联系图:提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
9. UNDO 操作和REDO 操作各做些什么事情?
【答案】(1)在恢复操作中,REDO 操作称为重做,UNDO 操作称为撤消。如果数据库被破坏,利用日志文件 执行REDO 操作,将两个数据库状态之间的所有修改重新做一遍。这样,建立了新的数据库,同时也没丢失对数据库的更新操作。
(2) REDO 处理的方法是正向扫描日志文件,重新执行登记的操作。如果数据库未被破坏,但某些数据可 能不可靠,这时,可通过日志文件执行REDO 操作,把已经结束的、不可靠的事务进行REDO 处理。
(3)UNDO 处理的方法是反向扫描日志文件,对每个UNDO 事务的更新操作执行逆操作,即对已插入的新 记录执行删除操作,对己删除的记录重新插入,对已修改的数据库用旧值代替新值。
10.数据仓库开发的阶段有哪些?
【答案】数据仓库系统的开发可以划分为规划、分析、设计、实施和运行维护5个阶段: (1)规划活动:建立开发数据仓库系统的目标,确定数据仓库系统涉及的范围、制定开发计划、在进行了相应的可行性研宄后,启动开发项目。
(2)数据仓库分析阶段:其工作是在掌握企业或决策者的需求的基础上定义数据仓库的体系结构,进行需 求定义,了解企业或决策者的需求,弄清企业决策的类型与需要决策的问题,了解这些决策制定的过程,各自涉 及的信息及其来源,从而将关于决策的这种需求转化为对信息的需求、对业务过程的需求、以及对数据访问的需 求。
(3)数据仓库设计:包括主题域设计、物理数据库设计、源系统分析、数据变换设计等内容。
(4)数据仓库实施:包括建立数据仓库及数据仓库填充。
(5)运行管理:数据仓库系统开发是一个反复渐进的过程。当数据仓库建成运行后,仍然需要继续开发工作,还需要继续发展。
二、应用题
11.利用Sale 数据库进行数据的访问、添加、删除等操作的联系。
(1)建立一个ODBC 数据源,要求连接销售管理系统Sale 数据库。
(2)利用ADO 访问Sale 数据库中表Product 。
(3)利用JDBC 访问Sale 数据库中表Product 。
【答案】(1)在使用ODBC 时应创建ODBC 源,具体步骤如下:
第一步,选择“控制面板”中的“管理工具”,再双击“数据源(ODBC ) ”,打开“ODBC 数据源管理器” 对话框,选择“系统DSN ”选项卡。
第二步,在“系统DSN ”中单击“添加”按钮,则打开“创建数据源”对话框,选择“SQLServer ”数据库类型。
第三步,单击“完成”按钮,贝U 打开“建立到SQL Server的新数据源”对话框,在“名称”文本对话框中 输入Sale ,在“服务器”中选择服务器名称为local 。
第四步,单击“下一步”按钮后,在打开的对话框中选择“使用用户输入登录ID 和密码的SQL Server验证” 单击按钮。在“登录ID ”文本框中输入sa ,在“密码”文本框中输入sa 。
第五步,单击“下一步”按钮后,选择“更改默认的数据库为”复选框,并在下拉列表框中选择Sale 。 第六步,单击“完成”按钮完成ODBC 连接的创建。
(2)使用ADO 访问数据库Sale 的步骤如下:
第一步,ADO 中的Connection 对象可实现ASP 程序与后台数据库的连接,其代码为: