2013-03-20 110 views
-1

在我的数据库中,我想删除使用PHP脚本的日期字段为<当前日期的行。php mysql删除不起作用

$date('Y-m-j'); 
$result = mysql_query("DELETE * FROM festival WHERE day = '$date'"); 

由于相同的原因,DELETE不起作用。使用SELECT执行相同的查询。 Perarps它是由于一些关于DELETE命令的权限?

+1

您的日期_is_你删除一切(=)指定日期的...不是它小于(<)。 – Ben 2013-03-20 16:53:30

+7

不需要*或者只是DELETE FROM会很好+上面说的是什么 – Dave 2013-03-20 16:55:13

+2

mysql_query('DELETE FROM'festival' WHERE'day' <= CURDATE();'); – MECU 2013-03-20 16:55:41

回答

1

您的SQL语法不正确。 DELETE查询不会显示列列表,但您正试图将其传递给一个列表(如*)。

您的查询应该简单地:

DELETE FROM festival WHERE date = '$date' 
+0

+1我也建议使用'WHERE date = CURDATE()' – Kermit 2013-03-20 17:23:13

+0

可能更容易看到,他希望'日期字段是<当前日期' – 2013-03-20 17:46:16

+0

谢谢。我的是一个非常愚蠢的错误。 – doxsi 2013-03-20 17:54:31