我有這個代碼的和平,我需要從Mysql
檢索數據。如果我使用參數化查詢,它不會取實際的參數值,而是將參數名稱作爲值。C#mysql參數化查詢
Error: @choise must be defined
MySqlConnection connection = new MySqlConnection("");
MySqlDataAdapter mySqlDataAdapter;
DataSet DS;
private string columnValue = xxx;
private string Choise = yyy;
MySqlCommand command = connection.CreateCommand();
command.CommandText = "SELECT * FROM table2 WHERE " + columnValue + " = @choise";
command.Parameters.Add(new MySqlParameter("@choise", Choise));
DS = new DataSet();
connection.Open();
mySqlDataAdapter = new MySqlDataAdapter(command.CommandText, connection);
mySqlDataAdapter.Fill(DS);
connection.Close();
當我運行此我得到的查詢,如:
SELECT * FROM table2 WHERE xxx = @choise
,而不是
SELECT * FROM table2 WHERE xxx = yyy
。 問題在哪裏?
我曾嘗試: command.Parameters.Add(new MySqlParameter("@choise", Choise));
command.Parameters.AddWithValue("@choise", Choise);
它,當我使用實際變量而不是參數正常工作。
沒了,同樣的問題... –
當我得到致命錯誤例外它說:「參數@choise必須定義」,這是顯而易見的,它已被定義... –