事务-基本演示,默认自动提交和手动提交、事务的四大特征

事务-基本演示

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;

start TRANSACTION;
-- 张三账户-500
update account set balance = balance-500 where name = 'zhangsan';

-- 李四账户+500
update account set balance = balance+500 where name = 'lisi';

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

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

 

 

默认自动提交

mysql数据库中事务默认自动提交

事务提交的两种方式:

  自动提交:

    mysql就是自动提交的

    一条DML(增删改)语句会自动提交一次事务

  手动提交:

    Oracle 数据库默认是手动提交事务

    需要先开启事务,再提交

修改事务的默认提交方式:

    查看事务的默认提交方式:

SELECT @@autocommit;

    修改默认提交方式:

-- 1 代表自动提交 
-- 0 代表手动提交set @@autocommit = 0;

 

 

事务的四大特征

原子性:是不可分科的最小操作单位,要么同时成功,要么同时失败

持久性:当事务提交或回滚后,数据库会持久化的保存数据

隔离性:多个事务之间,相互独立

一致性:事务操作前后,数据总量不变

posted @ 2022-10-12 16:53  漁夫  阅读(36)  评论(0)    收藏  举报