第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)

2024-01-01
| 54页
| 49人阅读
| 2人下载
普通

内容正文:

第10章 关系数据库事务管理 本单元教学目标 理解事务控制的原理、规则 深入理解解事务的ACID特性 深入认识关系数据库事务级别分类 掌握关系数据库事务控制方法 认识、了解事务的概念、作用 3 事务管理 问题的引入 事务 并发控制 4 问题的引入 多用户同时操作数据库 系统在执行用户的请求时出现故障 例如:帐户A转帐给帐户B10000元。 UPDATE YHZH SET 余额=余额-10000 WHERE 帐号=‘A’ UPDATE YHZH SET 余额=余额+10000 WHERE 帐号=‘B’ 5 事务的基本概念 事务(Transaction) 用户定义的一个对数据库读写操作序列 一个不可分割的工作单位 在关系数据库中,事务可以是一条、一组SQL语句,或整个程序。 事务和程序的区别? 程序包含多个事务 6 事务的性质 原子性(Atomicity) 事务中的操作要么都做,要么都不做 (All or None) 一致性(Consistency) 在事务完成或回滚时,必须使所有的数据都保持一致状态,即所有数据必须是完整性的,所有数据都必须是正确的。 隔离性(Isolation) 并发执行的各事务不能相互干扰 持续性/永久性(Durability) 事务一旦提交,它对数据库的更新不再受后继操作或故障的影响 ★ DBMS中事务处理必须保证其ACID特性,这样才能保证数据库中数据的安全和正确。 7 事务的基本概念 事务的开始和结束可以由用户显式控制。 SQL定义事务的语句 Start transaction(事务开始) Commit (事务提交,正常结束,将更新结果写入磁盘) Rollback (事务回滚,撤销事务中所有已完成的更新) 8 事务的基本概念 显式定义方式 START TRANSACTION START TRANSACTION SQL 语句1 SQL 语句1 SQL 语句2 SQL 语句2 。。。。。 。。。。。 COMMIT ROLLBACK 9 COMMIT 事务正常结束 提交事务的所有操作(读+更新) 事务中所有对数据库的更新永久生效 ROLLBACK 事务异常终止 事务运行的过程中发生了故障,不能继续执行,回滚事务的所有更新操作 事务回滚到开始时的状态 事务的基本概念 10 事务的基本概念 隐含事务与自动提交 ALTER INSERT CREATE DELETE DROP SELECT UPDATE TRUNCATE TABEL 11 例:删除仓库“WH1”表,并将职工T表当中所有在“WH1”仓库中职工记录删除 事务案例 BEGIN TRANSACTION MYDEL DELETE FROM 仓库T WHERE 仓库号='WH1' DELETE FROM 职工T WHERE 仓库号='WH1' IF @@ERROR<>0 ROLLBACK TRANSACTION MYDEL ELSE COMMIT TRANSACTION MYDEL 12 并发控制|干扰问题 丢失更新问题 读“脏”数据问题 不一致分析问题 幻象读问题 13 更新丢失问题 用SQL术语描述丢失更新问题 14 脏读问题|Dirty Read 读“脏”(Dirty Read)数据问题:查询一个已经被其他事务更新、但尚未提交的数据,将会引起脏读问题。 15 不一致分析问题 不一致分析问题也称为不可重复读问题,很多应用可能需要校验功能,这时往往需要连续两次或多次读数据进行校验和分析,结果由于其他事务的干扰,使得前后结果不一致,从而产生校验错误(即不一致的分析)。 如,对某个数据(a=10)作两次校验: 1、检查其值是否为 2的倍数, 2、检查其减去20后是否大于0(a-20>0) 如果在第1与第2步之间,这个数据被其它进程更改为25(a=25)则这个不合法的数据将变为合法数据。 16 幻读问题 幻象读问题与不一致分析问题有关 当事务A读数据时 事务B在对同一个关系(事务A的结果集)进行插入或删除操作 这时事务A再遍历结果集时(读同一条件的数据),会发现神秘地多出了一些元组或丢失了一些元组 把这种现象称作幻象读 17 封锁 封锁的基本技术 封锁机制 MySQL中与封锁有

资源预览图

第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)
1
第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)
2
第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)
3
第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)
4
第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)
5
第10章 关系数据库事务管理(课件)-《数据库应用技术-SQL Server》同步教学(机械工业版)
6
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。