zoukankan      html  css  js  c++  java
  • 事务

    广泛的运用于  订单系统,银行系统  等多种场景

    事务:是一个操作系列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位

    例如:A用户和B用户是银行的储户,现在A要给B转账500元

       那么需要做以下几件事:1、检查A的账户余额>500元;

                  2、A账户中扣除500元;

                  3、B账户中增加500元;

        事务的需求:A扣钱B加钱,要么同时成功,要么同时失败

    打开2个命令行窗口:1、执行  先打开查看,是否正确  

                

               2、事务执行成功

                 1)、打开事务:begin   

                    2)、执行:

                

                  3)、commit 

                只有执行 commit后,另外一个窗口,才会更新成功

              3、事务执行失败

                1)、打开事务:begin

                

                 2)、执行:

                

                  3)、rollback  (之前变更的数据执行失败,还是原数据)

                

     在每个事务结束时,都能保持数据一致

    事务命令:

    要求:表的引擎类型必须是  innodb类型  才可以使用事务,这是mysql表的默认引擎

         查看表的创建语句,可以看到engine=innodb

  • 相关阅读:
    存在和本质
    数据库的日志机制
    【msql】关于redo 和 undo log
    乐观锁是基于比较的无锁并发控制机制
    两段锁协议和防止死锁的一次封锁法
    并发编程沉思录
    什么是B-Tree
    二叉树与b树的性能区别:计算、层级与io
    认知模型
    复杂性、认知与心理学
  • 原文地址:https://www.cnblogs.com/xiaomengceshi/p/13645169.html
Copyright © 2011-2022 走看看