我需要帮助的一个简单的问题后,删除表的mysql的记录一分钟
$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的执行速度很快,让MySql做更多的工作可以代替MySql,因为MySql通常比较难以扩展然后是PHP。并尝试总是使用“反向”来转义字段/表名,因为您可以通过使用特殊(保留)名称获得意想不到的结果。只要做$ tme = date(“Y-m-j H:i:s”,time() - 60); (“DELETE FROM \'PM_TABLE \'WHERE \'date \'<= \”$ time \“;”)OR die(mysql_error()); – XzKto
您是否还可以显示您希望被删除的几行? –