数据未按时间顺序插入mysql表中

时间:2018-09-02 12:16:23

标签: php mysql pdo

我有一个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());

我认为这不是一个长期问题,而是我没有使用$MYPDO->beginTransaction();$MYPDO->commit();的事实吗?还是可以其他?

谢谢。

1 个答案:

答案 0 :(得分:2)

更改以下行

print("int(numb[pos]) == 9 ", int(numb[pos]), " ",ret)

使用

$adddata_PRST = $MYPDO->prepare("INSERT INTO tblData (AddDate, Price) VALUES(:AddDate, :Price)");

希望有帮助。

谢谢