时隔6天又见面了...真是懒得哎!!怎么可以不学习出去玩呢!!太过分了 自我反省自我反思
下面演示一下转账这个例子:回滚的!!!
准备数据:
-- 1、创建数据库lx数据库(如果不存在才创建)
create database if not exists lxcharset utf8;
use lx; -- 选择lx数据库
-- 2、在 lx库中创建 acc 表(银行账户表), 要求有id(主键),name(姓名),money(账户金额)
drop table if exists acc;
create table acc(
id int primary key auto_increment,
name varchar(50),
money double
);
-- 3、往 acc 表中, 插入2条记录
insert into acc values(null,'A',1000);
insert into acc values(null,'B',1000);
-- 查询acc表中的所有记录
select * from acc;
回滚事务 rollback
-- 查询acc账户表中A和B的金额
select * from acc;
-- 开启事务
start transaction;
-- 开始转账,A账户减去100元
update acc set money=money-100 where name='A';
-- 查询acc账户表中A和B的金额
select * from acc;
-- B账户增加100元
update acc set money=money+100 where name='B';
-- 查询acc账户表中A和B的金额
select * from acc;
-- 回滚事务
rollback;
-- 再次查询acc账户表中A和B的金额
select * from acc;
-- 将上面的操作再做一次,最后将rollback替换为commit,即提交事务
commit;
-- 将上面的操作再做一次,最后将rollback替换为quit,即中断操作
quit;
好滴!就酱紫了- -