什么是事务?
怎么设置事务为手动提交
set autocommit=0 禁止自动提交
set autocommit=1 开启自动提交
MySQL事务操作有哪些?
举个例子
-- 设置MySQL的事务为手动提交(关闭自动提交)
select @@autocommit;
set autocommit = 0;-- 模拟账户转账
-- 开启事务
begin;
update account set money = money - 200 where name = 'zhangsan';
update account set money = money + 200 where name = 'lisi';
-- 提交事务
commit;-- 如果转账中的任何一条出现问题,则回滚事务
rollback;
相关操作
-- 查看隔离级别
show variables like '%isolation%’; -- 设置隔离级别
/*
set session transaction isolation level 级别字符串
级别字符串:read uncommitted、read committed、repeatable read、serializable
*/
-- 设置read uncommitted
set session transaction isolation level read uncommitted;-- 设置read committed
set session transaction isolation level read committed;-- 设置repeatable read
set session transaction isolation level repeatable read;-- 设置serializable
set session transaction isolation level serializable;
参考:
- 2022新版黑马程序员MySQL知识精讲+mysql实战案例_零基础mysql数据库入门到高级全套教程