Mysql的事务是什么?什么是脏读?幻读?不可重复读?

事务 

                就是将一组SQL语句放在同一批次内去执行,如果一个SQL语句出错,则该批次内的所

       有sql语句都将被取消执行 事务的四大特性

事务的四大特性 

        原子性(Atomic):

                                        事务执行,即不可再分,要么不执行

        一致性(Consist):

                                        事务开始之前和事务结束后,数据库的完整性约束没有被破环

        隔离性(Isolated):

                                          事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间

                                          某一时刻的数据  

        持久性(Durable):

                                          事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库

                                          中,并不会被回滚  

脏读

        读取了未提交的新事物,然后被回滚了

        事务A读取了事务B尚未提交的数据,如果事务B回滚,则A读取使用了错误的数据

        解决  事务在读的时候,禁止读取未提交的事务

 幻读

        在事务A多次读取构成中,事务B对数据惊醒了新增操作,导致事务A多次读取的数据不一致 

不可重复读

        事务B读取两次数据资源,子啊这两次的过程中事务A修改了数据,导致事务B在两次的读取

        出来的数据不一致。 

事务的隔离级别 

                为了解决以上问题,关系型数据库提供给四种事务的隔离级别:读未提交,读已提交,可重复读,串行化,级别越高越能保证数据的完整性和一致性,但执行效率也越低 

        读未提交

                 所有的事务都可以看到其他未提交的事务的执行结果,不能解决脏读,幻读,可重复读

        读已提交

                一个事务的更新操作结果只有在该事务提交之后,另一个事务才可能读到同一数据的更

                新后的结果 ,可以防止脏读。

        可重复读

                一个事务多尺度同一个数据,在这个事务还没结束时,其他事务不能访问该数据,这样

                就可以在同一事物内两次读到的数据是一样的 ,可以防止脏读和不可重复读。

        串行化

                事务只能一个接着一个地执行,不能并发执行。 

                 

                 

  1.        
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值