【laravel】同一代码段内,先更新数据,后查询修改…

2018-07-24 08:00:09来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

    如标题所言,是什么意思呢?举个栗子,需求如下:

  你是一个电话销售人员,手头有一些待call电话单,每个电话单上有N个不同的电话号码,需要你每打一个电话就标记为”已打“。当一个电话单上的号码都标记为”已打“后,自动将该电话单标记为”已完成“。

    处理方法通常是先"更新"刚刚打过的号码为"已打",然后查询该电话单中还剩余多少电话号码没打过,如果查询结果显示已经没有“待call”号码,则再“更新”该电话单为“已完成”。

    这样处理需要操作三次数据库,而且偶尔会出现前一步“更新刚刚打过的号码为已打”的操作,在下面查询出的结果显示并没有起作用的现象。目前不明确是什么原因,初步断定是公司网速偶有卡顿造成的。

    将处理思路改为:先查询出“待call”号码,除去本次打的电话号码,判断是否还有剩余的电话号码:

      ①如果还有待call号码:“更新本次拨打的号码为已打”即可;

      ②如果没有待call号码:“更新本次拨打的号码为已打” & “更新电话单为已完成”即可。

    这样处理不会发生在同一代码段里,先更新数据,紧接着查询刚刚操作的数据,显示结果不正确的情况,并且操作数据库的次数更少。

  

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:PHP实现简单下载功能

下一篇:PHP错误:SQLSTATE[HY000] [2054] The server requested authent