0
我正在與一個SQL查詢的PHP執行,也許有人可以上流下了小光一個奇怪的情況:PHP + SQL查詢:選擇枚舉值
我有說的查詢:
"SELECT COLUMN_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = $table
AND COLUMN_NAME = $column"
查詢應返回一個字符串:enum('A','B'[,'C'...])
執行時(因爲它運行在命令行查詢時確實$table
和$column
傳遞給函數進行查詢,並在我的測試情況下是正確的 - 都存在作爲表格和列,在這種情況下,我們設置$table = 'profile'
和$column = 'gender'
,向其中上述SQL語句返回以下錯誤:
Unknown column 'profile' in 'where clause' in /registry/mysqldb.class.php on line 31
第31行是一個高速緩存功能,以高速緩存查詢直到需要時,或者當查詢失敗觸發一個錯誤。這在其他情況下工作正常。請求發出時,我已連接到正確的數據庫。
我的問題是這樣的:爲什麼'profile'被解釋爲列並導致錯誤?
嘎......在切割,粘貼和撤消之間,我一定是失去了它們。我想知道爲什麼它有效,然後突然沒有。對不起,這個愚蠢的問題! – stslavik