欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

详解Yii如何防止并发导致的更新数据不准

程序员文章站 2022-04-15 08:05:29
...
Yii如何防止并发导致的更新数据不准?本文主要介绍了Yii防止并发导致更新数据不准的简单解决方案,需要的朋友可以参考下。希望对大家有所帮助。

分享yii的一段有用的代码:

当需要让数据库某字段自增时,比如统计每天的查询量,每次请求后都把request_count+1,

如果这样写:

$model->request_count++;
$flag = $model->save();

遇到并发时会不准确,可改为:

$flag = static::updateAll([
'report_count' => new \yii\db\Expression("`request_count` + 1")
], [
'id' => $model->id
]);

同时开六个进程插入,每个进程增加100次,第一种方法只增加到了587,第二种方法增加到了600。

相关推荐:

详解Yii框架批量插入数据的简单扩展类

解决Yii框架参数化查询中IN查询只能查询一个的问题

Yii解决DeleteAll连表删除报错问题

以上就是详解Yii如何防止并发导致的更新数据不准的详细内容,更多请关注其它相关文章!