4Manuals

  • PDF Cloud HOME

如何使用参数更新SQLite数据库? Download

    获取Hough线的交点OpenCV C ++ 如何将字符串“ text1”设置为包含项目text1,text2,test3的组合框的选定项目? 为什么System.Net.Mail.MailAddress构造函数在域部分中解析带有斜杠“ /”的电子邮件? Android 10,API29:在应用程序文件夹中使用C ++库编写文件会使应用程序崩溃 Unity-LineRenderer没有出现在版本(2D)上 按下按钮后,电话中未显示通知 RSQLite:如何增加列数和参数数? ASP.net,使用WebConfig httpErrors重定向到区域内的控制器不起作用 获取会议室详细信息 我们如何将参数Line转换为Station?

使用参数更新数据库时出现问题。以下代码不会引发异常,类似的代码似乎可以在我正在处理的另一个应用程序中工作。我可能只是忽略了一些简单的事情,或者可能是我做的不正确。任何输入,不胜感激。

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();
        }

1 个答案:

答案 0 :(得分:0)

您的代码很好。

  1. 确保您没有锁定sqlite数据库。 我的测试用例是使用DB Browser for SQLite创建sqlite数据库并插入数据。 在单击write changes按钮之前,一切都无法在C#中工作。
  2. “订单”表中至少有一个订单,状态为Finished。
  3. 不要在sqlite中存储ERP(企业资源计划)数据。ERP表示诸如采购订单或订单...财务报告或会计之类的业务流程。
  4. int rows = cmd.ExecuteNonQuery();检查更新sql返回rows的值。例如:> 0表示更新1行成功。
  5. My DropBox Example File记住要设置文件数据库路径。我将其移至SQLiteApp\bin\Debug\TESTDB.db



Similar searches
    如何将使用钩子的React功能组件转换为类? 使用一些Typescript文件测试React应用 Python MySql API 如何单击弹出窗口上的链接并在父窗口上打开它(弹出窗口保持且不会最小化)-Java 如何通过字符变量在ddply中指定列名?