我有一個由3個按鈕(添加,編輯和刪除)控制的一個DataGridView。其中一個按鈕是編輯按鈕。另外兩個按鈕運行良好。它也有2個文本框,任務和優先級爲如果選擇在DataGridView行,則列的值將被傳遞到每個文本框傳遞try語句,但數據庫不會更新C#
我不知道是否有與下面的代碼的任何問題。
在數據庫中的表只有兩列,任務和優先級。
當我點擊編輯按鈕,try語句給了我成功的消息,但作爲datagridview的數據庫將不會更新爲好。
有沒有解決方法?
void EditItemClick(object sender, EventArgs e)
{
if (taskTb.Text != "" && priorityTb.Text != ""){
koneksi.Open();
MySqlCommand cmd = new MySqlCommand("update todo set [email protected], [email protected] where [email protected]", koneksi);
cmd.Parameters.AddWithValue(@"task", taskTb.Text);
cmd.Parameters.AddWithValue(@"priority", priorityTb.Text);
try{
cmd.ExecuteNonQuery();
MessageBox.Show("Successfully Edited", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (MySqlException ex){
MessageBox.Show(ex.ToString());
}
koneksi.Close();
readData();
}
else{
MessageBox.Show("Failed to edit");
}
}
你確定你的查詢是正確的?如果你通過像SQL Workbench這樣的客戶端運行它,它會正常工作嗎?通過正常工作,我的意思是它會得到預期的結果,因爲它看起來不會造成語法錯誤。 – stybl
也許它正在更新,但你沒有看到任何更改,因爲'SET任務= @任務WHERE任務= @任務'?您正在將「Task」中的值更新爲相同的值。 – waka
@stybl是的。我已經在SQL Workbench上嘗試過了。 – billyhalim25