money double);# 初始化数据insert into account values (null,'a',1000);insert into account values (null,'b',1000);
手动提交事务
手动提交事务有关的sql语句
SQL语句 描述
commit 提交事物
rollback 回滚事物
手动提交事务使用步骤
开启事务–>执行SQL语句–>成功–>提交事务
开启事务–>执行SQL语句–>失败–>回滚事务
演示案例:演示提交事务,a给b转账100元
-- 1.开启事务start transaction;-- 2.执行sql语句update account set money=money-100 where name='a';update account set money=money+100 where name='b';-- 3.提交事务commit;
案例演示:演示回滚事务,a给b转账100元
-- 1.开启事务start transaction;-- 2.执行sql语句update account set money=money-100 where name='a';update account set money=money+100 where name='b';-- 3.回滚事务rollback;
-- 自动提交事务:每条sql语句就是一个事务,那么执行一条sql语句就会提交一次事务-- mysql数据库就是自动提交事务-- a给b转账100元update account set money=money-100 where name='a';update account set money=money+100 where name='b';-- 查看mysql是否自动提交事务-- autocommit的值是on表示自动提交事务,值是off表示关闭自动提交事务show variables like '%commit%';-- 我们可以使用命令临时设置mysql变为手动提交事务,即将自动提交事务关闭-- 下次重新连接mysql依然是自动提交事务set autocommit = 0; -- 0 表示关闭自动提交事务 1表示开启自动事务update account set money=money-100 where name='a'