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;
运行结果

测试



数据并没有修改
我们可以在添加一个提交事务



浙公网安备 33010602011771号