我有一个php脚本,它每1分钟运行一次(cron),查询一个远程api,获取一个数字并将其插入mysql表中。问题是,并不是表中的每一行都是按时间顺序插入的。
例子:
id AddDate Price
1864 2017-09-07 05:25:01.000000 439
1865 2017-09-07 05:26:01.000000 439
1866 2017-09-07 05:28:01.000000 439
1867 2017-09-07 05:29:01.000000 459
1868 2017-09-07 05:30:01.000000 539
1869 2017-09-07 05:31:01.000000 536
1870 2017-09-07 05:32:01.000000 436
1871 2017-09-07 05:33:01.000000 537
1872 2017-09-07 05:27:01.000000 539
1873 2017-09-07 05:34:01.000000 456
1874 2017-09-07 05:35:01.000000 456
就像你看到的那样 2017-09-07 05:26:01
进来了 2017-09-07 05:28:01
以及 2017-09-07 05:27:01
来得晚了很多。
下面是php脚本:
$AddDate = trim(date("Y-m-d H:i:s"));
$Price = getprice();
$adddata_PRST = $MYPDO->prepare("INSERT INTO tblData (AddDate, Price) VALUES(:AddDate, :Price)");
$adddata_PRST->bindValue(":AddDate", $AddDate);
$adddata_PRST->bindValue(":Price", $Price);
$adddata_PRST->execute() or die($MYPDO->errorInfo());
我想这不是cron的问题,而是我没有使用 $MYPDO->beginTransaction();
以及 $MYPDO->commit();
? 或者是别的什么?
先谢谢你。
1条答案
按热度按时间tsm1rwdh1#
更改以下行
具有
希望有帮助。
谢谢