作用:可以用来维护数据库的完整性,保证成批的MySQL操作要么完全执行,要么完全不执行。
步骤:
1、 事务开始
START TRANSACTION;
2、回退ROLLBACK ;
或
COMMIT;
例子:
SELECT * FROM TB1;
START TRANSACTION;
DELETE FROM TB1;
SELECT * FROM TB1;
ROLLBACK;
SELECT * FROM TB1;
分析:第一条查询有数据。事务开始。第二条查询没数据,因为前一步已删除。事务结束。因为查询没结果,事务回滚。事务已回滚,最后一条
查询有数据。
复杂的事务使用保留点(保留点越多越好,回退灵活)
SAVEPOINT deletel;
ROLLBACK TO deletel;
更改默认的提交行为
SET autocommit = 0;