MySQL表更新错误

时间:2016-09-23 08:55:02

标签: php mysql

我很遗憾地问这个问题,但我画了一个完整的空白。我收到以下错误:

"您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以便在#<数字=' 7'''''''在第1行"

似乎每当我尝试在下面的代码中只使用一个整数时,我就会得到语法错误;

$go = mysql_query("UPDATE $db1 SET count='$t1c', WHERE number='$input2'") or die(mysql_error());

正如您所看到的那样,页面获得了价值,这不是问题......它似乎并不像WHERE = 7那样。我已尝试使用和不使用引号,我尝试将表中的列从int更改为varchar。仍然得到相同的东西,然后代码运行这件作品:

$check1 = mysql_query("SELECT * FROM $db1 WHERE number='$input2'");

运行绝对没问题。它找到数字等于$ input2 ...

的值

有人可以帮帮我吗?我在这里画了一个完整的空白:/

4 个答案:

答案 0 :(得分:1)

删除查询中的,

mysql_query("UPDATE $db1 SET count='$t1c' WHERE number='$input2'");

答案 1 :(得分:0)

删除在UPDATE查询中的WHERE之前放置的逗号(,)

$go = mysql_query("UPDATE $db1 SET count='$t1c' WHERE number='$input2'") or die(mysql_error());

答案 2 :(得分:0)

更改 "UPDATE $db1 SET count='$t1c' WHERE number='$input2'"void Main() { var result = new Summer().Sum("1", 2, 3.0); } public class Summer { private int Convert<T>(T source) { throw new NotSupportedException(); } private int Convert(int source) { return source; } private int Convert(string source) { return source.Length; } private int Convert(double source) { return (int)source; } public int Sum<T, K>(T i1, K i2) { return Convert((dynamic)i1) + Convert((dynamic)i2); } public int Sum<T, K, S>(T i1, K i2, S i3) { return Convert((dynamic)i1) + Convert((dynamic)i2)+ Convert((dynamic)i3); } }

逗号不应该在那里(在WHERE之前)并且导致错误。

答案 3 :(得分:-1)

number是mysql sql中的保留字 最好不要用这些单词命名列,或者你需要在查询中对它们进行反引号

示例:

`number`=3

mysql reserved words