当前位置:文档之家› 第10章 事务复习要点

第10章 事务复习要点

总体要点:
一事务执行原理
事务作为一个整体提交,在提交之前,所有的操作数据被临时存放起来,并没有保存到数据库中。

任何一个操作错误,数据将回退(RollBack)到事务开始时的状态,临时更改被全部取消。

事务提交后,数据更新才被实际保存到数据库。

关键点:如何捕捉到错误
二事务语法:
BEGIN TRAN [事务名]
操作1
if 错误ROL LBACK
操作2
if 错误ROLLBACK
……
COMMIT TRAN [事务名]
只要没有执行到Commit Tran语句,所有的数据更新都不会实际保存到数据库中。

三事务的ACID属性
●原子性(Atomicity)——事务中的操作要么全成功,要么全回退。

●一致性(Consistency)——事务执行前后数据在逻辑上是一致的。

●隔离性(Isolation)——甲事务执行时,乙事务不能得到甲事务中间
的状态。

即事务串行化,乙事务得到的数据要么是甲事务执行前
的状态,要么是执行后的状态。

●持久性(Durability)——事务执行完后,对数据进行的更改将被保存。

四事务的类型
●显式事务用BEGIN TRAN开始事务,用COMMIT 提交事务,
用ROLLBACK回退事务。

●自动提交事务是数据库引擎的缺省模式,每个单独的语句在
完成后被提交,失败后被回滚。

●隐式事务在当前事务完成提交或回退后,新事务自动启动。

隐性事务不需要使用BEGIN TRAN 语句标识事务开始,但需要COMMIT或ROLLBACK语句来提交或回退事务。

练习:
1.并发操作可能带来的数据不一致性有( A)。

[单选题]
A、丢失修改、不可重复读、读脏数据
B、丢失修改、死锁、故障
C、丢失修改、不可重复读、冗余
D、故障、死锁、冗余
2.对于并发操作带来的数据不一致性,解决的办法是并发控制,主
要技术是( B)。

[单选题]
A、加密
B、封锁
C、转储
D、审计
3.用于提交和回滚事务的语句为(B )。

[单选题]
A、END TRANSACTION 和 ROLLBACK TRANSACTION
B、COMMIT TRANSACTION 和 ROLLBACK TRANSACTION
C、SAVE TRANSACTION 和 ROLLUP TRANSACTION
D、COMMIT TRANSACTION 和 ROLLUP TRANSACTION
4.在数据库事务的四种隔离级别中,不能避免脏读的是(D )。

A. Serializable
B. Repeatable read
C. Read committed
D. Read uncommitted
5.为了防止一个事务的执行影响其他事务,应该采取( C )。

A.索引机制
B.故障恢复
C.并发控制
D.完整性约束
6.解决并发操作带来的数据不一致性一般采用( A )。

A.封锁
B.恢复
C.授权
D.协商
7.通过使用 COMMIT 和和 ROLLBACK 语句可以结束事务。

以下说法
正确的是( C )。

A.某事务执行了 ROLLBACK 语句,表示事务正确地执行完毕
B.某事务执行了 ROLLBACK 语句,可将其对数据库的更新写入数据库
C.某事务执行了 ROLLBACK 语句,可将其对数据库的更新撤消
D.某事务执行了 COMIMIIT 语句,其影响可用 ROLLBACK 语句来撤销
8.数据库的并发操作可能带来的问题包括( C )。

A.增强数据独立性
B.非授权访问
C.丢失修改
D.增加数据冗余度
9.如果有两个事务同时对数据库中同一数据进行操作,不会引起冲
突的是(D)。

A. 一个DELETE和一个SELECT
B.一个SELECT和一个DELETE
C. 两个UPDATE
D.两个SELECT
10.保证并发调度的可串行化,是为了确保事务的()。

A. 原子性和一致性
B. 原子性和持久性
C. 隔离性和持久性
D. 隔离性和一致性
11.在数据库系统中,死锁属于(B )
A 系统故障
B 事务故障 D 介质故障 D 程序故障
判断:
12. 如果某一事务成功,则在该事务中进行的所有数据修改均会提交,
成为数据库中的永久组成部分。

(对)
13. 事务是并发控制的基本单位。

(对)
14. 事务的操作可以分割单独执行。

(错)
15.事务的原子性是指事务中的每一个操作彼此是独立的。

(错)。

相关主题