dtnnpt11795 2011-07-28 04:20
浏览 9

一分钟后删除表的mysql记录

I need help for a simple question ,

$tme = date("Y-m-j H:i:s");
mysql_query("DELETE FROM PM_TABLE WHERE date <= $time - INTERVAL 60 SECOND");

So, It should work and delete all records old as long as long 1 minute.

But it cannot do the operation.

returning value would be like this :\

DELETE FROM PM_TABLE WHERE date <= 2011-07-28 08:49:29 - INTERVAL 60 SECOND

table schema :

CREATE TABLE IF NOT EXISTS `PM_TABLE` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `text` varchar(255) COLLATE utf8_bin NOT NULL,
  `date` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) 
  • 写回答

1条回答 默认 最新

  • dpevsxjn809817 2011-07-28 04:23
    关注

    The PHP variable is getting injected as a string, without single quotes to delimit it for SQL to interpret it correctly. But you don't need the PHP function - use:

    mysql_query("DELETE FROM PM_TABLE 
                  WHERE date <= NOW() - INTERVAL 60 SECOND");
    
    评论

报告相同问题?