加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中事务控制对的案例分析

发布时间:2022-02-16 02:00:37 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍MySQL中事务控制对的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 什么是事务控制 事务是指作为一个逻辑工作单元执行的一系列操作,这些操作要么全部成功,要么全部失败。事务确保了多个数据的修改作为
       这篇文章主要介绍MySQL中事务控制对的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
 
       什么是事务控制
 
      事务是指作为一个逻辑工作单元执行的一系列操作,这些操作要么全部成功,要么全部失败。事务确保了多个数据的修改作为一个单元来处理。
 
在MySQL中,只有使用了Innodb存储引擎的数据库或表才支持事物
事务用于维护数据库的完整性,保证成批的sql语句要么都执行,要么都不执行
事务用于管理INSERT、UPDATE和DELETE语句
假如,张三在ATM机上给李四转账100元,在银行的业务系统中,主要会执行两步数据变更操作:
 
从张三的账户减去100元
给李四的账户增加100元
试问,如果操作1执行成功,操作2执行失败会发生什么?
 
事务的四个特性
 
如果某个数据库支持事务,那么该数据库必须具备ACID四个特性,即Atomicity(原子性)、Consistency(一致性)、Isolation(隔离性)、Durability(持久性)。
 
原子性:事务必须是原子工作单元,事务中包含的各操作要么都做,要么都不做
一致性:事务在执行完成时,必须使所有的数据都保持一致状态
隔离性:事务独立运行。多个事务之间相互隔离,互不干扰。事务的100%隔离,会牺牲速度
持续性:事务执行完成之后,它对系统的影响是永久性的
MySQL的事务控制
 
在默认情况下,MySQL是自动提交事务的,即每一条INSERT、UPDATE、DELETE的SQL语句提交后会立即执行COMMIT操作。因此,要开启一个事务,可以使用start transaction或begin,或者将autocommit的值设置为0.

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!