2014-09-30 143 views
0

的searchfunction did'nt幫助我.. 我的MySQL查詢看起來是這樣的:使MySQL錯誤「未知列」,但列中存在

SELECT * FROM user WHERE username = flo; 

,我得到這個錯誤:

Unknown column 'flo' in 'where clause' 

但是爲什麼? 我的數據庫確實有表「用戶」,其中包含多列, 一列被命名爲「用戶名」。

我也有2個測試用戶,他們的用戶名之一是「flo」,所以出了什麼問題?

感謝您的幫助!

+0

引用它'WHERE用戶名='flo''這是一個字符串,而不是一個整數。 – 2014-09-30 09:14:20

+0

請仔細閱讀 – 2014-09-30 09:15:22

+0

@ Fred-ii-謝謝!我只是盲目地看到這一點,因爲我之前幾個小時正在處理其他腳本:-) – 2014-10-08 07:44:48

回答

1

你得到錯誤信息Florian的原因,是因爲flo這個詞需要用引號括起來。

SELECT * FROM user WHERE username = 'flo'; 

在SQL中,這樣做WHERE column = column是有效的語法,但在你的情況,你是想看看是否column = (contains) string

+0

感謝它非常好! - 這也是一個非常不好的錯誤,但是我問這一天不是我最好的一天:-) – 2014-10-23 11:57:55

+0

@FlorianChrometz不客氣Florian,很高興有幫助,*歡呼聲* – 2014-10-23 13:52:11