我的查询有问题吗?

时间:2011-04-15 10:36:30

标签: php mysql

mysql_query("INSERT INTO questions (question_no)
    VALUES ('" . mysql_real_escape_string($i) . "')
    WHERE question_text LIKE ('" . mysql_real_escape_string($val) . "')")
or die('Error, insert query failed');

我收到“错误,插入查询失败”:(

3 个答案:

答案 0 :(得分:4)

您无法在WHERE中使用INSERT子句。

您希望通过WHERE条款实现什么目标?

<强>更新

如果要更新现有记录,请使用:

UPDATE  questions
SET     question_no = 'mysql_real_escape_string($i)'
WHERE   question_text LIKE 'mysql_real_escape_string($val)'

(当然,适当引用PHP的查询)

答案 1 :(得分:1)

mysql_query("insert into questions (question_no) VALUES ('" . mysql_real_escape_string($i) . "') ")or die('Error, insert query failed');

无需在插入查询中添加where子句。

或使用更新查询在现有记录中进行更改

mysql_query("updat questions set question_no = '" . mysql_real_escape_string($i) . "' where question_text like '" . mysql_real_escape_string($val) . "' ")or die('Error, update query failed');

答案 2 :(得分:0)

您应将其更改为:

mysql_query("insert into questions (question_no) 
VALUES ('" . mysql_real_escape_string($i) . "') ")
or die('Error, insert query failed');

注意,insert values语句中的where子句是无意义的。

查看有关插入行的mysql doc。您尝试使用的构造无效。