mysql数据库事务
数据库事务指的是作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。事务处理可以确保除非事务性单元内的所有操作都成功完成,不然的话不会永久更新面向数据的资源。然而,”MySQL事务”是一个过程,它具有隔离性、原子性、一致性以及持久性,一般情况下,”MySQL事务”过程的操作在提交前,都不会被真实的写入数据库,就像数据库的”沙盒”。
(一)MySQL事务简介
数据库的所有修改在”沙盒”的过程中不会影响到真实数据,只有在我们用commit命令提交以后,对数据库的修改才能够真正被写入数据库。
MySQL事务特性如下:
(1)原子性(Atomic):一个事务会包含许多的操作,而这些操作可能会全部执行,也可能全都不执行,这就由最后会不会执行commit命令决定。
(2)一致性(Consistency):一致性指的是事务使系统从一个一致的状态转换到另外一个一致状态。
(3)隔离性(Isolation):指的是并发事务间相互影响的程度,如一个事务能不能读取到未提交的事务修改的数据;
(4)持久性(Durability):就是说在事务提交后,它对系统的影响是永久的;
如以下实例。
(二)MySQL事务实例
InnoDB引擎才会支持事务,如下例:
事务过程如下:
总结:我们利用事务就可以在事务出现严重的数据库操作失误时,用rollback回到事务启动前的状态,只有在commit使用后,才会把事务中的操作应用到数据库当中。
关于MySQL的数据库事务,本文就介绍这么多,希望对大家有所帮助,谢谢!