mysql查询更新具有变量的单元格where criteria datetime字段与另一个变量匹配

时间:2013-09-19 13:08:13

标签: php mysql

我已经尝试了很多语法来更新数据库中的单元格,但它们都没有工作。以下是我的情景。

我的数据库有3个字段,类型为Time(datetime),Flow(float)&累积(浮点)

首先,我将最后两行数据转换为变量,然后想要更新/替换标准为datetime字段的累积字段的最后一行。

我怀疑问题出在日期时间字段(和(或)或)引号上。

这是代码。

$sql = "select * from Inflow_table ORDER BY Time DESC LIMIT 2";
$query = mysql_query( $sql );

$row = mysql_fetch_assoc($query);
$LastTime = $row[Time];

$Cumulativeupdate = 35.56; //Here a formula replaces the static value

mysqli_query("UPDATE  `Inflow_table` SET  `Cumulative` =  '.$Cumulativeupdate.' WHERE  `Time` =  '.$LastTime.' LIMIT 1 ") or die(mysql_error());

其余代码正在运行,但它没有更新累积字段。请帮帮我!

2 个答案:

答案 0 :(得分:0)

由于您正在尝试运行不是内置函数的mysqli_query,请更改:

mysqli_query("UPDATE  `Inflow_table` SET  `Cumulative` =  '.$Cumulativeupdate.' WHERE     `Time` =  '.$LastTime.' LIMIT 1 ") or die(mysql_error());

mysql_query("UPDATE  `Inflow_table` SET  `Cumulative` =  '".$Cumulativeupdate."' WHERE  `Time` =  '".$LastTime."' LIMIT 1 ") or die(mysql_error());

并且还记得要注意与mysql_ *函数相关的SQL Injection漏洞。尝试使用:

mysqli:http://php.net/manual/en/book.mysqli.php

PDO:http://php.net/manual/en/book.pdo.php

答案 1 :(得分:0)

将查询更改为

mysqli_query("UPDATE  `Inflow_table` SET  `Cumulative` =  "'.$Cumulativeupdate.'" WHERE  `Time` =  "'.$LastTime.'" LIMIT 1 ") or die(mysql_error());