所以我試圖從數據庫中提取一個值,選擇使用WHERE INT的行。嘗試從MySql獲取數據時出現語法錯誤
conn = new MySqlConnection(DBdetails.connStr);
conn.Open();
query = "SELECT * FROM tables WHERE [email protected]";
MySqlCommand cmd = new MySqlCommand(query, conn);
cmd.Parameters.AddWithValue("@tafel", tafel);
cmd.ExecuteNonQuery();
但是它不會通過「cmd.ExecuteNonQuery()」,它將引發錯誤說的語法心不是正確的,如:「近表= 1」,「鄰近表= 2」
我試圖獲取另一個在同一個表中是一個var char,它的工作完美。
不要真的看到我做錯了什麼。 'table'列是一個int,'tafel'是一個int。
謝謝!
你有一個列名爲'table'? –
* table *是[保留字](http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html) - 嘗試引用它或更改列名 – vogomatix
如上所述,您需要把'table'放在反引號中,因爲它是一個保留字。保留字列表位於文檔中:http://dev.mysql.com/doc/refman/5.7/en/reserved-words.html。這是一個非常常見的MySQL問題,網站上的許多人認爲這些問題應該以重複或刪除的方式關閉。 –