Sql Query无法正常工作!

时间:2009-04-01 00:35:53

标签: php sql mysql

INSERT INTO `test` (`x`, `y`)  WHERE `id` = `$id`

VALUES (`$x`, `$y`)

这个查询有什么问题?我在php文件中的mysql_query()函数中运行它。

6 个答案:

答案 0 :(得分:6)

您不能将Where子句与插入一起使用。您要么插入一行,要么不插入。

答案 1 :(得分:4)

如果您尝试更新数据库中的信息,请在正在运行的查询中使用UPDATE而不是INSERT INTO。

答案 2 :(得分:2)

您不能在插入上使用where子句。我想你可能想要更新声明:

update test set
x = $x,
y = $y
where id = $id

当您在数据库中插入新值时,通常在插入之后没有ID值(假设您使用的是自动生成的ID)。

答案 3 :(得分:0)

您需要删除“WHERE id = $ id” - 它在INSERT语句中没有意义。

答案 4 :(得分:0)

所以,

更新测试SET x ='x',y ='$ y'WHERE id ='$ id';

OR

INSERT INTO test('x','y')VALUES('$ x','$ y');

如其他帖子中所述 - 您不能使用WHERE进行INSERT。

答案 5 :(得分:0)

另请注意,您必须使用单引号(')而不是反引号(`)作为值。引用列名/字段名时使用反引号。

此:

`field` = '$value'

而不是:

`field` = `$value`

除非你确实想要引用另一个字段。这有时是复制值或匹配JOIN等时所需的。但是因为你有一个变量,我假设你想使用单引号而不是反引号。