事务
事务操作分两种:自动事务(默认)、手动事务
手动事务的操作流程
开启事务:start transaction;
进行事务操作
关闭事务
提交事务:commit; 同步数据表,表示操作成功
回滚事务:rollback; 直接清空日志表,表示操作失败
事务操作原理:事务开启之后,所有的操作都会临时保存到事务日志,而事务日志只有在得到commit命令才会同步到数据表,其他任何情况都会清空,比如rollback、断电、断开连接
回滚点
设置回滚点语法:savepoint 回滚点名字;
回到回滚点语法:rollback to 回滚点名字;
roollback 回滚 回到前一步操作
自动事务处理
show variables like 'autocommit'; ---显示系统变量‘autocommit’(模糊查询)
关闭自动提交:set autocommit = off/0;
开启自动提交:set autocommit = 1; (一般都在开启)
事务的四大特性:ACID
A:Atomic,原子性
C:Consistency,一致性
I:Isolation,隔离性
D:Durability,持久性
锁机制
例:
start transaction;
updata student set money = money + 500 where name = '张三' (不是主键)
提交 或者 rollback 解锁