事务

  • 事务(Transaction)是指作为一个逻辑工作单元执行的一系列操作,这些操作要么全部成功,要么
    全部失败。事务确保对多个数据的修改作为一个单元来处理。
  • 说明:
    1. 在MySQL中,只有使用了Innodb存储引擎的数据库或表才支持事务。
    2. 事务用于维护数据库的完整性,保证成批的sql语句要么都执行,要么都不执行。
    3. 事务用于管理INSERT、UPDATE和DELETE语句。

ACID特性

特性 说明
Atomicity(原子性) 事务必须是原子工作单元,事务中包含的各操作要么都做,要么都不做
Consistency(一致性) 事务在执行完成时,必须使所有的数据都保持一致状态
Isolation(隔离性) 事务独立运行;多个事务之间相互隔离,互不干扰;事务的100%隔离会牺牲速度
Durability(持久性) 事务执行完成之后,它对系统的影响是永久性的

事务控制

  • 在默认情况下,MySQL是自动提交事务的,即每一条insert、update、delete的SQL语句提交后会立即执行commit操作;
  • 要开启一个事务,可以使用start transaction或begin,或者将autocommit的值设置为0。

【示例】:从a的银行账户转100元钱给b的银行账户,主要执行两部=步:a账户减100元,b账户加100元,两步必须都执行成功才行
MySQL学习16_事务控制
MySQL学习16_事务控制
MySQL学习16_事务控制
MySQL学习16_事务控制


知识总结,交流学习,不当之处敬请指正,谢谢!

相关文章: