泰顺网站建设,清河企业做网站,邢台封控最新消息,博山信息港一、事务的基本要素#xff08;ACID#xff09;
1、原子性#xff08;Atomicity#xff09;#xff1a;事务开始后所有操作#xff0c;要么全部做完#xff0c;要么全部不做#xff0c;不可能停滞在中间环节。事务执行过程中出错#xff0c;会回滚到事务开始前的状态…一、事务的基本要素ACID
1、原子性Atomicity事务开始后所有操作要么全部做完要么全部不做不可能停滞在中间环节。事务执行过程中出错会回滚到事务开始前的状态所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体就像化学中学过的原子是物质构成的基本单位。
2、一致性Consistency事务开始前和结束后数据库的完整性约束没有被破坏 。比如A向B转账不可能A扣了钱B却没收到。
3、隔离性Isolation同一时间只允许一个事务请求同一数据不同的事务之间彼此没有任何干扰。比如A正在从一张银行卡中取钱在A取钱的过程结束前B不能向这张卡转账。
4、持久性Durability事务完成后事务对数据库的所有更新将被保存到数据库不能回滚。
二、事务的并发问题
1、脏读事务A读取了事务B更新的数据然后B回滚操作那么A读取到的数据是脏数据
2、不可重复读事务 A 多次读取同一数据事务 B 在事务A多次读取的过程中对数据作了更新并提交导致事务A多次读取同一数据时结果 不一致。
3、幻读系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级但是系统管理员B就在这个时候插入了一条具体分数的记录当系统管理员A改结束后发现还有一条记录没有改过来就好像发生了幻觉一样这就叫幻读。
小结不可重复读的和幻读很容易混淆不可重复读侧重于修改幻读侧重于新增或删除。解决不可重复读的问题只需锁住满足条件的行解决幻读需要锁表
三、MySQL事务隔离级别