SQL-事务的基本介绍和默认自动提交和手动提交

事务的基本介绍

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

图解:

 

 事务操作

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 @   baimingze  阅读(1828)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示