我需要帮助解决一个简单的问题,
$tme = date("Y-m-j H:i:s");
mysql_query("DELETE FROM PM_TABLE WHERE date <= $time - INTERVAL 60 SECOND");
所以,它应该可以工作并删除所有长达 1 分钟的旧记录。
但是它不能进行操作。
返回值是这样的:\
DELETE FROM PM_TABLE WHERE date <= 2011-07-28 08:49:29 - INTERVAL 60 SECOND
表架构:
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`)
)
最佳答案
PHP 变量作为字符串注入(inject),没有单引号来分隔它以便 SQL 正确解释它。但是您不需要 PHP 函数 - 使用:
mysql_query("DELETE FROM PM_TABLE
WHERE date <= NOW() - INTERVAL 60 SECOND");
关于php - 一分钟后删除表的mysql记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6854045/