2017年四川师范大学数据库技术(同等学力加试)复试仿真模拟三套题
● 摘要
一、简答题
1. UNDO 操作和REDO 操作各做些什么事情?
【答案】(1)在恢复操作中,REDO 操作称为重做,UNDO 操作称为撤消。如果数据库被破坏,利用日志文件 执行REDO 操作,将两个数据库状态之间的所有修改重新做一遍。这样,建立了新的数据库,同时也没丢失对数据库的更新操作。
(2) REDO 处理的方法是正向扫描日志文件,重新执行登记的操作。如果数据库未被破坏,但某些数据可 能不可靠,这时,可通过日志文件执行REDO 操作,把已经结束的、不可靠的事务进行REDO 处理。
(3)UNDO 处理的方法是反向扫描日志文件,对每个UNDO 事务的更新操作执行逆操作,即对已插入的新 记录执行删除操作,对己删除的记录重新插入,对已修改的数据库用旧值代替新值。
2. 考虑定义在事务集(Tl , T2, T3)上的调度S1和S2,S1与S2是否是冲突等价的?为什么?
【答案】不是等价冲突,因为T1的write (Q )和T2的write (Q )是冲突的,不可交换。
【解析】不同事务的一对中的一组操作,有些是冲突的,有些是不冲突的。不冲突操作的次序可以互相调换,不致不会影响执行的结果。冲突等价调度是指一个调度S ,通过调换S 中的不冲突操作次序所得到的新调度称为S 的冲突等价调度。不冲突操作有两类:一是对同一数据均为
,Rj (x ); 二是对不同数据对象的一组操作中可以有写的操作,即Ri (x ),读操作,即Ri (x )
Wj (y )或Wi (x )Wj (y )。因为T1和T2对数据对象Q 进行了相同的写操作,所以是冲突的,所以S1和S2不是冲突等价的。
3. 什么是数据库的安全性?有哪些安全措施?
【答案】(1)数据库的安全性是指保护数据库,防止不合法的使用,以免数据的泄漏、非法更改和破坏。、
(2)数据库安全性控制的方法
①用户标识与系统鉴定:DBMS 都要提供一定的方式供用户标识自己。在存取数据库的数据之前,用户首先要自我标识,系统对用户的标识进行核定,通过鉴定后,才提供数据库的使用权。常用的标识方法是用户名和口令字。
②存取权限的控制:用户被获准使用数据库之后,还要根据预定的用户权限进行存取控制,如某个用户只能 读哪些数据库表,某个用户只能写哪些数据库表等。
③数据加密:以密码的方式存储数据。
4. 叙述数据库中死锁产生的原因和解决死锁的方法。
【答案】(1)死锁产生的原因:封锁可以引起死锁。比如事务封锁了数据A ,事务
了数据B 。
但A 己被
成了死锁。
(2)解决死锁的常用方法有如下3种:
①要求每个事务一次就要将它所需要的数据全部加锁。
②预先规定一个封锁顺序,所有的事务都要按这个顺序实行封锁。
③允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤消,释放此事务持有的所有锁,使其他事务能继续运行下去。
5. 试由Armostrong 公理系统推导出下面三条推理规则。
(1)合并规则:若
(2)伪传递规则:由
(3)分解规则:
又因
可得所以由传递律可得可得
根据传递律得根据传递律得 【答案】(1
)已知
由増广律知
(2)已知由増广律知又因(3)已知由自反律知又因 又申 请封锁数据B ,但因B 被封锁,所以也处于等待状态。这样,封锁,所以和只能等待。封锁又申请封锁数据A , 处于相互等待状态而均不能结束,这就形
6. 解释强制存取控制机制中主体、客体、敏感度标记的含义。
【答案】(1)主体是系统中的活动实体,既包括DBMS 所管理的实际用户,也包括代表用户的各进程。
(2)客体是系统中的被动实体,受主体操纵,包括文件、基表、索引、视图等。
对于主体和客体,DBMS 为它们每个实例(值)指派一个敏感度标记(Label )。
(3)敏感度标记被分成若干级别,例如绝密、机密、可信、公开等。主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级。
二、应用题
7. 有两张关系表:
Students (SID , SName , Sex , Dept )
Prizing (SID , PName , Type.PDate )
Students 表描述的是学生基本信息,Prizing 表描述的是学生获奖信息。
①若在应用程序中经常使用如下查询语句:
请问能否使用聚集文件提高此查询的性能?并给出原因。
②为了提高查询性能,数据库管理员在Students 表的SName 列上建立了一个非聚集索引Sname_____ind。
如果应用程序使用如下语句查询数据: SELECT*FROM Students WHERE Sname like
请问Sname_____ind索引是否能够提高语句的查询速度,并给出原因。
【答案】①可以用聚集文件提高查询性能。因为聚集文件将不同关系表中有关联关系的记录存储在一起,减少了系统的物理I/O操作次数,提高了查询性能。
②此索引不能提高该语句的查询速度。因为该索引是建立在SNAME 上的非聚集索引,以SNAME 首字母排序,而查询语句查询的名字是最后一个“华”的SNAME ,所以仍然需要全部扫描students 表,因此不能提高该语句的查询速度。
【解析】聚集文件本身存储不同类型表的联系,能够减少表间的连接操作,提高查询性能。而非聚集索引对于以SNAME 首字母排序时有效。