- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 管理事务处理 第26章 管理事务处理 一、事务的基本概念 1、什么是事务 所谓事务,从物理上讲是指,DBMS对用户所执行操作的监控:成功即提交,失败则回滚。 2、事务的特性 事务具备ACID四个特性: A:Atomic,即原子性 C:Consistency,即一致性 I:Isolation,即隔离性 D:Durability,即持久性 (1)Atomic,即原子性 指一个事务就是一个不可分割的工作单元。只有该事务中所有的操作都执行成功,才算整个事务成功;事务中任何一个SQL语句执行失败,那么已经执行成功的SQL语句也必须撤销,DB状态退回到事务执行之前的状态。 为什么需要“原子性”? A、主观上的希望 原子操作的结果只有两个:成功与失败。而对于非原子操作,则可能出现多种结果,这样程序员需要处理的情况就太多了。 B、业务上的需要 如转账业务 (2)Consistency,即一致性 指事务不能破坏关系数据的完整性及业务逻辑上的一致性。 如,转账事务应保证转出账户与转入账户余额的和不变。 (3)Isolation,即隔离性 指一个事务的执行不能被其它事务干扰。即一个事务内部的操作及使用的数据对其它并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 (4)Durability,即持久性 指只要事务成功结束,它对DB所做的更新就永久性的保存了下来。即使发生系统崩溃,重启DBS后,DB还能恢复到事务成功结束时的状态。 二、控制事务处理 1、事务的开启与回滚 select * from student_course; start transaction; delete from student_course; select * from student_course; rollback; select * from student_course; 开启事务 删除course表中所有记录 回滚事务 事务回滚指,将数据恢复到执行某些SQL语句之前的状态。 2、事务的提交 select * from student_course; start transaction; delete from student_course; select * from student_course; commit; select * from student_course; 开启事务 删除course表中所有记录 提交事务 事务提交指,将对数据的修改写入到持久化设备中。无法恢复到执行某些SQL语句之前的状态。 3、使用保留点 使用保留点可以很方便的控制在一个事务中要回滚的位置。 select * from student_course; start transaction; savepoint sp1; delete from student_course where sid=2011001 and cid=01; savepoint sp2; delete from student_course where sid=2011002 and cid=02; savepoint sp3; delete from student_course where sid=2011003 and cid=01; select * from student_course; rollback to sp2; select * from student_course ; 设置保留点sp1 设置保留点sp2 设置保留点sp3 回滚到保留点sp2 4、更改默认的提交行为 默认的提交行为是自动提交,即每执行一条语句,都将永久作用于数据库。但,使用如下语句可取消自动提交行为: set autocommit = 0; 5、需要注意的几个细节: (1)DBMS默认会将对DB的每一步操作都视为一个事务。即,每执行一条SQL语句,就会产生一个事务。 (2)事务处理主要是用来管理insert、update、delete语句的,与select 无关。 (3)回滚对于create与drop操作是无用的。即create与drop操作是不能被回滚的。 (4)当执行commit或rollback语句后,本事务会自动关闭。下一个事务将自动开启。 (5)保留点越多,越便于控制。 (6)保留点在事务处理完成后会自动释放。 上一事务结束 事务成功 事务失败 提交 回滚 回滚 (7)事务控制图解 三、事务的并发控制 DB服务器 DB 缓存 DB 硬盘 DB日志文件 Client 缓存 Client 所有操作 记入日志 从日志中读 取回滚数据 1、数据库操作的底层实现细节 在DB中对数据库的增、删、改操作,都有自动提交机制。这个自动提交
您可能关注的文档
最近下载
- 《Linux操作系统及应用技术》全套教学课件.pptx
- 第三单元基于算法的编程基础 第6课 生活中的算法-查找与排 说课稿 -2023-—2024学年青岛版(2024)初中信息技术第四册.docx VIP
- 普通混凝土长期性能和耐久性能试验方法标准.pdf VIP
- 中国新生儿复苏指南(2021年修订).pptx VIP
- 3m直尺平整度检测记录表.docx VIP
- 施工现场环境因素识别与评价表.xls VIP
- 2025_2026学年九年级上册数学第一次月考[陕西专用 北师大版九上:特殊四边形 一元二次方程 概率].docx VIP
- 产品售后服务体系.docx VIP
- 12SS508混凝土模块式室外给水管道附属构筑物.docx VIP
- 新02S3图集集合图.pdf VIP
文档评论(0)