问题 单项选择题

 事务提交之后,其对数据库的修改还存留在缓冲区中,并末写入到硬盘,此时发生系统故障,则破坏了事务的();系统重启后,由DBMS根据()对数据库进行恢复,将已提交的事务对数据库的修改写入硬盘。

事务提交之后,其对数据库的修改还存留在缓冲区中,并末写入到硬盘,此时发生系统故障,则破坏了事务的();

A.原子性

B.一致性

C.隔离性

D.持久性

答案

参考答案:D

解析:

本题考查对事务ACID(原子性、一致性、隔离性、持久性)属性和故障恢复的理解和掌握。一个事务对应了现实中的一项业务,会涉及多条对数据库的更新指令。事务的ACID属性中,原子性是指事务要么全部执行完,要么不被执行,与现实业务相对应;一致性指事务的执行结果要与现实业务产生的信息相一致,数据库也就处于一致性状态;隔离性指多个事务并发执行时不能相互干扰造成结果的错误:持久性指事务一旦提交,其执行结果应被存入数据库而不被丢失。题干所描述的情况,事务提交后执行结果未写入数据库,因系统重启而丢失,破坏了事务的持久性。系统故障由系统自动恢复,任何对数据库的修改都必须采取先写日志的方式,修改前的数据和修改后的数据都会写入到日志中,而且日志文件写入硬盘后才进行数据库的更新,所以在系统重启后,可以查看日志,对已提交的事务,将其更新结果写入到数据库,即保证了事务的持久性。

判断题
单项选择题