简单来说,事务就是要保证一组数据库操作,要么全部成功,要么全部失败。

事务的特征

  • 原子性:一个事务要么全部提交成功,要么全部失败回滚,不能只执行其中的一部分操作;
  • 隔离性:是指在并发环境中,并发的事务时相互隔离的,一个事务的执行不能不被其他事务干扰。不同的事务并发操作相同的数据时,每个事务都有各自完成的数据空间;
  • 一致性:事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行之前和执行之后,数据库都必须处于一致性状态。如果数据库系统在运行过程中发生故障,有些事务尚未完成就被迫中断,这些未完成的事务对数据库所作的修改有一部分已写入物理数据库,这是数据库就处于一种不正确的状态,也就是不一致的状态;
  • 持久性:一旦事务提交,那么它对数据库中的对应数据的状态的变更就会永久保存到数据库中。—即使发生系统崩溃或机器宕机等故障,只要数据库能够重新启动,那么一定能够将其恢复到事务成功结束的状态。