事务介绍
事务的概念
事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功
事务相关命令
# 开启事务
#(等同于set autocommit = off )
#(等同于set autocommit = 0 )
start transaction
# 回滚事务
rollback
# 提交事务
commit
Mysql中使用事务
MySQL中事务默认自动提交的
每当执行一条SQL,就会提交一个事务 (一条SQL 就是一个事务);Oracle 中事务默认 不自动提交,需要在执行SQL 语句后 通过 commit 手动提交事务。
MySQL管理事务的方式
方式一 :通过手动事务管理 SQL 语句
# 开启事务
start transaction
# 回滚事务 (将数据恢复到事务开始时状态)
rollback
# 提交事务 (对事务中进行操作,进行确认操作,事务在提交后,数据就不可恢复)
commit
方式二:设置自动提交
数据库中存在一个自动提交变量 ,通过
show variables like '%commit%';
---- autocommint 值是 on,说明开启自动提交,通过命令可以关闭自动提交
set autocommit = off / set autocommit = 0
如果设置 autocommit 为 off,意味着以后每条SQL 都会处于一个事务中,相当于每条SQL执行前 都执行 start transaction
补充:Oracle中 autocommit 默认就是 off