如何每天只插入一条记录?

时间:2011-08-23 08:13:32

标签: php mysql crontab

我的编码是关于linux和php中的crontab,我想做的是我的cronjob datetime是* * * * *,这意味着它每分钟也会检查结果,所以一旦我的结果检查完成,它将会插入到数据库,但现在我的结果是继续插入数据库,那么如何每天只用cronjob运行数据库中每天只插入一条记录或者如何停止将结果插入数据库?

谢谢你们希望你们尽快回复我。

2 个答案:

答案 0 :(得分:3)

执行以下操作:

  1. 在记录中添加日期字段并使其唯一。
  2. 修改作业以检查是否有记录 - 如果有,请不要插入新记录。

答案 1 :(得分:1)

您必须检查是否已插入日期。假设您的表格为Table,而存储日期的列为datetimestamp

$sql = "select * from Tablewhere DATE(`date`) = CURRENT_DATE()";
$result = mysql_query($sql);
if (mysql_num_rows($result)>0){
    //you already have inserted current date, handle this as you need
}
else{
    //current date have not beed inserted, insert it as usual
}

此代码不检查sql错误,也不使用prepared statments,但它很简单,并为您提供了一个好主意。