一段代码执行了2条sql,寓意是想让两个sql相呼应,但是今天出现了点问题,大神请看内容
Jun 20, 2016 pm 12:34 PM 因为数据库字段挺多,我就打个比方
详细信息表 list
用户表 user 有一个字段 num
我执行一个方法,该方法每次往list中插入一条数据时,同时往user表的num+1
上个月大概有20W的注册用户,我分别把这些用户的list表中的数量求了出来,并且与user表中num做了对比。
对比结果是大概有70人的list数据的数量,比num所记录的数量少大概10条左右。
因为方法是先后执行的,大概是这样的先后顺序
public function test(){
insert $data;
update num+1;
}
先往list里面插入,后更新的user num字段
我想问一下,想这种数据不同步的情况都会在什么情况下发生。求别让贴代码。
回复讨论(解决方案)
你这个应该要使用 事务
当 insert $data 或 update num+1 失败时就撤销操作
是否用了事务处理? 是否判断插入成功后再更新字段
insert $data;失败了但仍然执行了update num+1;就会不一致啦
是否用了事务处理? 是否判断插入成功后再更新字段
insert $data;失败了但仍然执行了update num+1;就会不一致啦
大哥,一般什么情况下会失败, 感觉没什么情况啊,就是一条insert语句,用户名是手机号。字段也都可以为空
手机号重复,写入值和字段类型不一致 都可能失败的
你写入数据库前应该过滤用户数据
手机号重复,写入值和字段类型不一致 都可能失败的
你写入数据库前应该过滤用户数据
肯定过滤了,那天写了一个监控,结果到现在没出问题,等出问题就知道啥情况了,thanks 哥们。

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

11 Best PHP URL Shortener Scripts (Free and Premium)

Working with Flash Session Data in Laravel

6 Extra Skills Every PHP Developer Should Have

Build a React App With a Laravel Back End: Part 2, React

Simplified HTTP Response Mocking in Laravel Tests

12 Best PHP Chat Scripts on CodeCanyon

cURL in PHP: How to Use the PHP cURL Extension in REST APIs
