基于时间戳的MySql插入查询(延迟插入)

时间:2013-04-03 07:18:25

标签: php mysql insert

我需要根据选择的时间在我的数据库中执行delayed mysql insert

示例:Timestamp选择= "2013-04-03 10:12:00"

所以我希望我的insert query能够在("2013-04-03 10:12:00")特定时间执行。

$qry = mysql_query("INSERT INTO table (field) value ($value)");

我有一个mysql innoDB数据库。

我将从timestamp界面接受用户的HTML+PHP值。

是的,我dont want要做cron jobs

2 个答案:

答案 0 :(得分:0)

没有cron工作的选择......

您需要为cron job设置every minute,其中查询正在查找插入查询的任何匹配时间戳。

但是如果您要插入越来越多的数据,那么每分钟cron job对于DB健康状况来说并不是更好,您应该再次考虑时间间隔以获得更好的性能。

答案 1 :(得分:0)

您可以将数据插入到附加表中,然后使用MySQL事件在准确的时间将记录复制到目标表中。例如 -

CREATE EVENT event1
  ON SCHEDULE AT '2013-04-03 20:00:00'
  DO 
BEGIN
  INSERT INTO <table> SELECT * FROM <temp table>;
  TRUNCATE TABLE <temp table>;
END

Using the Event Scheduler