第一节 事务的基本概念
一、什么是事务
事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可
分割的工作单位。事务是恢复和并发控制的基本单位。
二、如何定义事务
显式定义方式:BEGIN TRANSACTION BEGIN TRANSACTION,SQL 语句1-n,COMMIT ROLLBACK,隐式方式,
当用户没有显式地定义事务时,DBMS按缺省规定自动划分事务;事务结束。COMMIT,事务正常结束,提交事
务的所有操作(读+更新)。事务中所有对数据库的更新永久生效。ROLLBACK,事务异常终止,事务运行的
过程中发生了故障,不能继续执行,回滚事务的所有更新操作,事务滚回到开始时的状态。
事务的ACID特性:
原子性(Atomicity):事务中包括的诸操作要么都做,要么都不做。
一致性(Consistency):一致性状态:数据库中只包含成功事务提交的结果,不一致状态:数据库中包
含失败事务的结果。
隔离性(Isolation):一个事务内部的操作及数据对其他并发事务是隔离的,并发执行的各个事务之间
不能互相干扰。
持续性(Durability):事务一旦提交,对数据库中数据的改变是永久性的。接下来的其他操作或故障
不应对其执行结果有任何影响。
银行转帐:从帐号A中取出50万元,存入帐号B。定义一个事务,该事务包括两个操作,这两个操作要么
全做,要么全不做,全做或者全不做,数据库都处于一致性状态。如果只做一个操作,数据库就处于不一致
性状态。隔离性, T1的修改被T2覆盖了!
|