教案事务例子.docVIP

  • 10
  • 0
  • 约9.19千字
  • 约 12页
  • 2017-11-08 发布于湖北
  • 举报
资料来自网络,请保护知识产权,请您下载后勿作商用,只可学习交流使用。

前言 首先思考一个问题:如果对数据库进行了多次修改,如果前面的修改成功,后面修改时发生了意外,怎么办? 案例:以银行转账为例。 有帐户表记录如下: 帐号 姓名 余额 1 张三 2000 2 李四 1000 假设张三给李四转账300块,则对数据库的修改必然有两步: 第一步:减少张三的余额:2000→1700 第二步:增加李四的余额:1000→1300 但是如果第一步完成以后,马上就死机(或者断电、地震……)了。 等数据库重启以后,目前的帐户情况变为: 帐号 姓名 余额 1 张三 1700 2 李四 1000 这表示,张三的余额减少了,但是李四并没有收到转账的钱。 说明: ?在实际的银行项目中,转账不会是只有一个帐户表,直接进行余额修改。在此简化的目的是为了便于说明事务的相关概念。 思考:数据库如何操作才能避免这种情况发生呢? 要解决上面的问题,必须学习一个新的知识点:事务,这是数据库中非常重要的概念,必须掌握! 问题:为什么要事务? 回答: 在对数据进行多次增删改以后,如果要保证所有的操作同时成功,或者同时失败。必须使用事务。 问题:什么是事务? 回答: 事务就是业务上的一个逻辑工作单元,它能够保证其中对数据所有的操作,要么全部成功,要么失败。 例如在转账时,一个帐户要增加余额,一个帐户要减少余额,这两个操作在业务上必须当一个整体,也叫做“一个逻辑工作单元”。 “符合逻辑”就是指满足

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档