我正在使用cron作业从事务表中获取总计并更新另一个表。在我的cron工作电子邮件中,我回复说任务已经完成,但我的数据没有变化。
<?php
try {
$dbh = new PDO("mysql:host=localhost;dbname=the", 'the', '1');
$query = "UPDATE Test a
INNER JOIN
(
SELECT ID, SUM(Total) as Total,
FROM TestTrans
WHERE Status = ?
Group By ID
) b
ON a.ID = b.ID
SET a.Total = b.Total
Where a.Total > b.Total";
$iStatus = 1;
$stmt = $dbh->prepare($query);
$stmt->bindParam(1, $iStatus);
$stmt->execute();
echo 'Task Completed';
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
一些建议:
- 以与cron相同的方式从命令提示符手动运行scrip。例如CCD_ 1。它有效吗
- 在cron作业中添加一些日志记录:
*/5***php myscript.php mymotions>>/var/log/cronrun.log 2&>1
在/var/log/cronrun.log文件中查找错误和线索/