日期()sql无法从php运行
我在phpmyadmin中使用这个查询,并且工作得非常完美日期()sql无法从php运行,php,sql,Php,Sql,我在phpmyadmin中使用这个查询,并且工作得非常完美 UPDATE TABLE SET DETALLE = 'PENDING FOR TODAY' where DATE(FECHA) = DATE(NOW()); 但是如果我在PHP中也这样做 $sql= "UPDATE TABLE SET DETALLE = 'PENDING FOR TODAY' where DATE(FECHA) = DATE(NOW()) $resultado = mysql_query($sql) or die
UPDATE TABLE SET DETALLE = 'PENDING FOR TODAY' where DATE(FECHA) = DATE(NOW());
但是如果我在PHP中也这样做
$sql= "UPDATE TABLE SET DETALLE = 'PENDING FOR TODAY'
where DATE(FECHA) = DATE(NOW())
$resultado = mysql_query($sql) or die ("error");
如果php中的DATE()有任何问题,您没有执行任何操作?您错过了代码行末尾的;
。此外,您可以使用
curdate()
代替date(now())
:
如果您有性能问题,可以将其更改为
$sql = "UPDATE TABLE
SET DETALLE = 'PENDING FOR TODAY'
WHERE FECHA >= CURDATE() AND FECHA < CURDATE() + interval 1 day";
$sql=“更新表
SET DETALLE='PENDING FOR TODAY'
其中FECHA>=CURDATE()和FECHA
如果您在FECHA上有索引,它将使用索引
请。
它们不再得到维护,而是在使用。
了解准备好的语句,然后使用或。有关如何执行以及为什么它如此重要的快速概述,请参阅。您错过了”代码>位于代码行末尾。
此外,您可以使用curdate()
代替date(now())
:
如果您有性能问题,可以将其更改为
$sql = "UPDATE TABLE
SET DETALLE = 'PENDING FOR TODAY'
WHERE FECHA >= CURDATE() AND FECHA < CURDATE() + interval 1 day";
$sql=“更新表
SET DETALLE='PENDING FOR TODAY'
其中FECHA>=CURDATE()和FECHA
如果您在FECHA上有索引,它将使用索引
请。
它们不再得到维护,而是在使用。
了解准备好的语句,然后使用或。请参阅,以快速了解如何执行此操作以及为什么它如此重要。打开错误报告(E_ALL)
时会出现什么错误;什么是错误打开错误报告(E_ALL)
;这可能是正确的答案。只是快速上瘾。如果您计划在MSSQL中使用SQL,请将日期(NOW())更改为GETDATE()。感谢您的回复,我尝试了所有备选方案,但仍然无法使用$SQL=“UPDATE TABLE SET DETALLE=”PENDING for TODAY”,其中FECHA>=GETDATE()和FECHAmysql\u query($sql)或die(“error”)代码>使用mysql\u查询($sql)或die(mysql\u error())代码>查看错误。谢谢Juergen,我看到错误是“未选择数据库”。。。我在开头的$con=mysqli\u connect(DB\u主机名、DB\u用户名、DB\u密码、DB\u名称)中有这样的代码;其中echo DB_名称;返回正确的数据库名称的基可能是正确的答案。只是快速上瘾。如果您计划在MSSQL中使用SQL,请将日期(NOW())更改为GETDATE()。感谢您的回复,我尝试了所有备选方案,但仍然无法使用$SQL=“UPDATE TABLE SET DETALLE=”PENDING for TODAY”,其中FECHA>=GETDATE()和FECHAmysql\u query($sql)或die(“error”)代码>使用mysql\u查询($sql)或die(mysql\u error())代码>查看错误。谢谢Juergen,我看到错误是“未选择数据库”。。。我在开头的$con=mysqli\u connect(DB\u主机名、DB\u用户名、DB\u密码、DB\u名称)中有这样的代码;其中echo DB_名称;返回正确的数据库名称