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

事务基本演示

事务的基本介绍

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

 

 事务操作

1.开启事务

start transaction;

2.回滚

rollback;

3.提交

commit;

使用案例演示

数据表

 

 SQL语句

-- 创建数据表
CREATE TABLE account(
        id INT PRIMARY KEY AUTO_INCREMENT,
        name VARCHAR(10),
        balance DOUBLE
);
-- 添加数据
INSERT INTO account (name,balance) VALUES ("张三",1000),("李四",1000);

提交事务

-- 开启事务
START TRANSACTION -- 开启事务
UPDATE account SET balance=balance-500 WHERE name="张三";
UPDATE account SET balance=balance+500 WHERE name="李四";
ROLLBACK;-- 提交

运行结果

 

 回滚事务

SQL语句

-- 开启事务
START TRANSACTION; -- 开启事务
UPDATE account SET balance=balance-500 WHERE name="张三";
UPDATE account SET balance=balance+500 WHERE name="李四";
ROLLBACK; -- 回滚

运行结果

并没有进行数据更改

默认自动提交和手动提交

事务提交的两种方式:

1.自动提交

  • mysql就是自动提交的
  • 一条DML(增删改)语句会自动提交一次事务

2.手动提交

  • 需要先开启事务 再提交

修改事务的默认提交方式

  • 查看事务的默认提交方式
SELECT @@autocommit; -- 1 代表自动提交 0 代表手动提交
  • 修改默认提交方式
SET @@autocommit=0;

运行结果

 

 测试

 

 

 

 

 

 数据并没有修改

我们可以在添加一个提交事务

 

 

posted @ 2022-10-13 13:05  ja不会va  阅读(33)  评论(0)    收藏  举报