zoukankan      html  css  js  c++  java
  • PHP事务是什么?

    php事务四大特性

    事务就是一组原子性的SQL查询,或者说一个独立的工作单元。

    原子性(Atomicity):

    事务是数据库的逻辑工作单位,它对数据库的修改要么全部执行,要么全部不执行。

    一致性(Consistemcy):

    事务前后,数据库的状态都满足所有的完整性约束。

    隔离性(Isolation):

    并发执行的事务是隔离的,一个不影响一个。如果有两个事务,运行在相同的时间内,执行相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在使用系统。这种属性有时称为串行化,为了防止事务操作间的混淆,必须串行化或序列化请求,使得在同一时间仅有一个请求用于同一数据。

    通过设置数据库的隔离级别,可以达到不同的隔离效果。

    持久性(Durability):

    在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。

    php事务的并发问题

    1、脏读

    事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据。

    2、不可重复读

    事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果 不一致。

    3、幻读

    系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级,但是系统管理员B就在这个时候插入了一条具体分数的记录,当系统管理员A改结束后发现还有一条记录没有改过来,就好像发生了幻觉一样,这就叫幻读。

    vi设计http://www.maiqicn.com 办公资源网站大全https://www.wode007.com

    小结:

    不可重复读的和幻读很容易混淆,不可重复读侧重于修改,幻读侧重于新增或删除。解决不可重复读的问题只需锁住满足条件的行,解决幻读需要锁表。

  • 相关阅读:
    7进程、线程、协程
    架构
    5oop面向对象编程
    2流程控制
    redis
    1HTML
    3.函数、递归、模块
    2、变量、数据类型、运算符、流程控制
    一个小公司的性能测试工程师应该如何开展工作
    程序代码调优工具perf学习记录
  • 原文地址:https://www.cnblogs.com/xiaonian8/p/13718783.html
Copyright © 2011-2022 走看看