使用参数时更新数据库时出现问题。以下代码不会引发异常,类似的代码似乎可以在我正在处理的另一个应用程序中工作。我可能只是忽略了一些简单的事情,或者可能是我做的不正确。任何输入,不胜感激。
PS。如果要添加更多,我会添加更多,但是就像我说的那样,我没有收到任何错误。它只是不更新数据库。
try
{
con.Open();
SQLiteCommand cmd = new SQLiteCommand();
cmd.Connection = con;
cmd.Parameters.AddWithValue("@Status", "Finished");
cmd.Parameters.AddWithValue("@OrderID", txtOrderToFinish.Text); //from text box
cmd.CommandText = $"UPDATE Orders SET Status = @Status WHERE OrderID = @OrderID";
cmd.ExecuteNonQuery();
//Reset Screen
txtOrderToFinish.Text = "";
txtOrderToFinish.Focus();
}
catch (Exception ex)
{
MessageBox.Show("Could not set the order to finished in the databse.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Information);
//***Log Error Here ***REMOVED***
}
finally
{
con.Close();
}
您的代码很好。
DB Browser for SQLite
创建sqlite db并插入数据。在单击write changes
按钮之前,一切都无法在C#中正常工作。Finished
。cmd.ExecuteNonQuery();
检查rows
值。SQLiteApp\bin\Debug\TESTDB.db