首页 > 其他分享 >事务基本演示和事务默认自动提交&手动提交

事务基本演示和事务默认自动提交&手动提交

时间:2022-10-13 11:33:05浏览次数:45  
标签:事务 演示 -- account 默认 提交 balance

1. 事务的基本介绍
  1. 概念:
    * 如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败

  2. 操作:
    1. 开启事务: start transaction;
    2. 回滚:rollback;
    3. 提交:commit;
  3. 例子:
    CREATE TABLE account (
      id INT PRIMARY KEY AUTO_INCREMENT,
      NAME VARCHAR(10),
      balance DOUBLE
    );
  -- 添加数据
  INSERT INTO account (NAME, balance) VALUES ('zhangsan', 1000), ('lisi', 1000);

  SELECT * FROM account;
  UPDATE account SET balance = 1000;
  -- 张三给李四转账 500 元

  -- 0. 开启事务
  START TRANSACTION;
  -- 1. 张三账户 -500

  UPDATE account SET balance = balance - 500 WHERE NAME = 'zhangsan';
  -- 2. 李四账户 +500
  -- 出错了...
  UPDATE account SET balance = balance + 500 WHERE NAME = 'lisi';

  -- 发现执行没有问题,提交事务
  COMMIT;

  -- 发现出问题了,回滚事务
  ROLLBACK;

  4. MySQL数据库中事务默认自动提交

    * 事务提交的两种方式:
      * 自动提交:
        * mysql就是自动提交的
        * 一条DML(增删改)语句会自动提交一次事务。
      * 手动提交:
        * Oracle 数据库默认是手动提交事务
        * 需要先开启事务,再提交
    * 修改事务的默认提交方式:
      * 查看事务的默认提交方式:SELECT @@autocommit; -- 1 代表自动提交 0 代表手动提交
      * 修改默认提交方式: set @@autocommit = 0;

标签:事务,演示,--,account,默认,提交,balance
From: https://www.cnblogs.com/xuche/p/16787618.html

相关文章

  • 事务-默认自动提交&手动提交和事务-事务四大特征
    事务-默认自动提交&手动提交MySQL数据库中事务默认自动提交事务提交的两种方式:自动提交:mysql就是自动提交的一条DML(增删改)语句会自动提......
  • MySQL事务隔离级别
    事务隔离级别概述mysql中,innodb所提供的事务符合ACID的要求,而事务通过事务日志中的redolog和undolog满足了原子性、一致性、持久性,事务还会通过锁机制满足隔离性,在innodb......
  • 面试官:Java 多线程怎么做事务控制?一半人答不上来。。
    项目代码基于:MySql数据,开发框架为:SpringBoot、Mybatis开发语言为:Java8前言公司业务中遇到一个需求,需要同时修改最多约5万条数据,而且还不支持批量或异步修改操作。于是......
  • 下面在 Mac 演示 Rust 的安装,其他系统教程请看安装 Rust
    下面在Mac演示Rust的安装,其他系统教程请看安装Rustcurl--proto'=https'--tlsv1.2-sSfhttps://sh.rustup.rs|sh这将下载并安装Rust的官方编译器,和它的包管理......
  • 事务注解:@Transtation
    事务注解:@Transtation@Transactional注解可以作用于接口、接口方法、类以及类方法上当作用于类上时,该类的所有public方法将都具有该类型的事务属性当作用在方法......
  • Redis事务以及锁的简单介绍
    Redis“耐心之树,结黄金之果”目录Redis“耐心之树,结黄金之果”1、NoSQL1.1NoSQL的四大分类:1.2NoSQL应用场景:2、Redis2.1redis-benchmark性能测试2.2基础3、事务......
  • 事务-基本演示,默认自动提交和手动提交、事务的四大特征
    事务-基本演示CREATETABLEaccount(idintPRIMARYKEYauto_increment,nameVARCHAR(10),balanceDOUBLE);insertintoaccount(name,balance)VAL......
  • Mysql笔记-事务
    事务事务(Transaction)会把数据库从一种一致状态转换为另一种一致状态。在数据库提交工作时,要么所有修改都已经保存了,要么修改都不保存。事务是访问并更新数据库中各种数据项......
  • mysql事务处理用法与实例详解
    MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关1.MyISAM:不支持事务,用于只读程序提高性能2.InnoDB:支持ACID事务、行级锁、并发3.BerkeleyDB:支持事务  一......
  • git提交代码详解
    刚开始做项目的时候,git怎么提交代码?一般情况是我们现在github或者gitee上新建一个仓库,然后将建好的仓库clone到本地,最后在clone下来的代码的基础上撸代码。撸完代码之后,添......