事务是指作为一个逻辑工作单元执行的一些列操作,这些操作要么全部成功,要么全部失败。事务确保对多个数据的修改作为一个单元来处理。
如果某个数据库声称支持事务,那么该数据库必须具备 ACID 四个特性,即 Atomicity(原子性)、Consistency (一致性)、 Isolation (隔离性) 和 Durability (持久性)。
在默认情况下, MySQL 是自动提交事务的,即每一条 INSERT、UPDATE、DELETE SQL 语句提交后会立即执行 COMMIT 操作。因此要开启一个事务,可以使用 start transaction 或 begin ,或者将 autocommit 的值设为 0 。常见事务语法如下:
# 开启事务
begin
# 提交事务
commit;
# 回滚事务
rollback;