1.事务
1.什么是事务?
事务: 要么全部成功,要么全部失败
事务是数据库管理系统(DBMS)执行过程中的一个 逻辑单位 ,由一个 有限的数据库操作序列 组成。
逻辑单位:最小的操作单位,不可再分割。
有限的数据库操作序列:包含一个或多个DML语句。
支持事务的引擎: InnoDB、NDB
2.事务的四大特性是啥?
ACID: 最终目的——保证数据的一致性。
原子性(Atomicity): 事务是不可分割的工作单位,DML语句要么全部成功,要么全部失败。
一致性(Consistency): 事务执行前后,数据库中的数据必须保持一致。
隔离性(Isolation): 多用户并发访问数据库时,每个用户之间的操作不会相互影响。
持久性(Durablity): 事务一旦被提交,它对数据库的改变就是不可逆的。
3.事务相关操作
查看事务开启状态:
SHOW VARIABLES LIKE 'autocommit';
自动提交事务默认开启
关闭事务自动提交:
SET SESSION autocommit = off;
手动开启事务:
-- 下列两个命令是等价的
BEGIN;
-- 或者
START TRANSACTION;
结束事务:回滚或者提交
-- 回滚
ROLLBACK;
-- 提交
COMMIT;
还有一种结束:使用可视化界面工具执行了一条DML