2013-03-19 41 views
2

好吧,似乎有關於這個主題的許多問題,但我很奇怪。 我運行此查詢:SQL返回錯誤:'字段列表'中的未知列「g」

INSERT INTO `blogposts` (id,author,subject,content,date) VALUES (2,$author,$subject,$content,$date) 

而得到這個錯誤:

Unknown column 'g' in 'field list' 

我在表中沒有列 'G',所以發生了什麼?

+1

SQL注入操作? – 2013-03-19 21:28:35

回答

3

如果您使用的任何變量都是字符串,則需要在查詢中用引號括起來。如果其中一個變量的值是「g」,並且它被插入查詢而沒有引號,MySQL將查找列「g」。

INSERT INTO `blogposts` (`id`,`author`,`subject`,`content`,`date`) VALUES (2,"$author","$subject","$content","$date") 
+0

哦......哎呀,對不起這個問題,我太蠢了。 – imulsion 2013-03-19 21:27:43

+0

有時每個人都會疏忽...乾杯:) – Adrian 2013-03-19 21:28:42

+0

還有一件事:我的查詢改爲:插入'blogposts'(id,'author','subject','content',date)VALUES(2,$作者,$主題,$內容,$日期),但給錯誤說我的語法有問題。它是什麼? – imulsion 2013-03-20 10:34:42

2

「日期」至少是一個保留字,可能引起問題的主題。也請嘗試反駁列名稱。

+0

好,我甚至沒有注意到。 – Adrian 2013-03-19 21:38:11

相關問題