

start transaction;


commit;


rollback;

create table account(id int primary key auto_increment,name VARCHAR(40),money FLOAT);



insert into account (name,money)values('a',1000);
insert into account (name,money)values('b',1000);


select * from account;


start transaction;
update account set money=money-100 where name="a";
update account set money=money+100 where name="b";
commit;


select * from account;


start transaction;
update account set money=money+100 where name="a";
update account set money=money-100 where name="b";


select * from account;


select * from account;










rollback;






set session transaction isolation level read uncommitted;


select @@transaction_isolation;
//这里老版本是要这样写,新版本可以select @@tx_isolation;详情百度


start transaction;
























set session transaction isolation level repeatable read;




![]()



































这篇博客详细演示了数据库事务的使用,包括开始事务、提交、回滚操作,并通过创建account表及插入数据展示了转账过程。同时,讨论了事务的隔离级别,从READ UNCOMMITTED到REPEATABLE READ的不同状态,并通过设置session的事务隔离级别来观察其影响。
1899

被折叠的 条评论
为什么被折叠?



