数据库10-事务.pdf
文本预览下载声明
10 数据库事务处理技术
1010 数据库事务处理技术数据库事务处理技术
第十章数据库事务处理技术
第十章数据库事务处理技术
第十章数据库事务处理技术
事务
事务的定义
事务的性质
数据库的并发控制
数据库的恢复技术
L.J.Zhu, Automation Dept., SJTU
事务(Transaction )
事务(Transaction )
事务(Transaction )
用户定义的一个数据库操作序列
一个不可分割的工作单位
数据库恢复和并发控制的基本单位
事务和程序是两个概念
一个程序通常包含多个事务
在关系数据库中,一个事务可以是一条或多条
SQL语句,也可以或整个程序
L.J.Zhu, Automation Dept., SJTU
定义事务
定义事务
显式定义方式
BEGIN TRANSACTION BEGIN TRANSACTION
SQL 语句1 SQL 语句1
SQL 语句2 SQL 语句2
…… ……
COMMIT //提交 ROLLBACK // 回滚
隐式方式
当用户没有显式地定义事务时,DBMS
按缺省规定自动划分事务
L.J.Zhu, Automation Dept., SJTU
事务的状态
事务的状态
活动状态:事务开始(BEGIN TRANSACTION )
部分提交状态:执行完事务的最后一条语句
失败状态:事务不能正常运行
回滚状态:事务失败,数据库恢复到事务执行前的
状态(ROLLBACK )
提交状态:事务成功,数据库内容永久保存
(COMMIT )
部分提交 提交状态
活动状态
失败状态 回滚状态
L.J.Zhu, Automation Dept., SJTU
事务的性质
事务的性质
原子性 (Atomicity ):事务是个逻辑单位,
其中的操作序列要么不做,要么全做
一致性 (Consistency ):事务执行的结果
必须是使数据库从一个一致性状态变到另一
个一致性状态
隔离性 (Isolation ):事务之间互不干扰
持续性 (Durability ):事务一旦提交,对数
据库中数据的改变时永久性的
L.J.Zhu, Automation Dept., SJTU
第十章数据库事务处理技术
第十章数据库事务处理技术
第十章数据库事务处理技术
事务
数据库的并发控制
事务并发引起的问题
数据库的并发控制技术
并发调度的可串行性
封锁的粒度
数据库的恢复技术
L.J.Zhu, Automation Dept., SJTU
事务的并发控制
事务的并发控制
事务的执行方式
串行访问(serial access )
事务顺序执行
并发访问(concurrent access )
事务在时间上重叠执行
交叉
显示全部