开发场景

在实际的业务开发中,有些业务操作要多次访问数据库。一个业务要发送多条SQL语句给数据库执行。需要将多次访问数据库的操作视为一个整体来执行,要么所有的SQL语句全部执行成功。如果其中有一条SQL语句失败,就进行事务的回滚,所有的SQL语句全部执行失败。
比如

  1. 转账业务:比如a给b转账,那么a扣款和b加款两步操作要么都成功,要么都失败;
  2. 学生管理系统中,要删除一个学生,那么需要删除学生的基本资料同时,也要删除和该学生相关的选课、成绩等信息;

image-20220419213757135

概念

事务指的是逻辑上的一组操作,组成这组操作的各个单元要么全都成功,要么全都失败。

作用

保证在一个事务中多次操作数据库表中数据时,要么全都成功,要么全都失败。