2011-04-15 48 views
1
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'); 

我收到了 「錯誤,插入查詢失敗」 :(我的查詢有問題嗎?

+0

你爲什麼用where子句插入? – 2011-04-15 10:38:13

+0

因爲插入到數據匹配的地方,這是不可能的? – Abby 2011-04-15 10:38:53

+0

'INSERT'添加一條新記錄。 「數據匹配」是什麼意思?配什麼?您可以在手術前後張貼您想要的表格嗎? – Quassnoi 2011-04-15 10:40:16

回答

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

無需添加其中插入查詢子句。

,或者採用更新查詢,以改變現有記錄

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'); 
+0

謝謝是的更新:D – Abby 2011-04-15 10:44:22

4

INSERT不能使用WHERE條款。

什麼你想達到你的WHERE條款?

更新:

如果要更新現有記錄,請使用:

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

(適當地引用查詢PHP,當然)

0

您應將其更改爲:

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

注意,即凡在插入值聲明條款是毫無意義的。

查看有關插入行的mysql doc。建設你試圖使用是無效的。