Csharp/C#教程:OleDbCommand.ExecuteNonQuery()不保存ms访问数据库中的更改分享


OleDbCommand.ExecuteNonQuery()不保存ms访问数据库中的更改

我有.mdb数据库,代码如下:

 using (OleDbConnection connection = new OleDbConnection(myConnectionString)) { using (OleDbCommand cmd = connection.CreateCommand()) { cmd.CommandText = "UPDATE myTab SET col2 = @val1 WHERE col1 = @val2"; cmd.Parameters.AddWithValue("@val1", 0); cmd.Parameters.AddWithValue("@val2", -1); cmd.Connection.Open(); cmd.ExecuteNonQuery(); cmd.Connection.Close(); } } 

我从db获取数据,在我的gui程序中更改它,然后将其保存在db中。 更改保存,但不在db(我不知道在哪里),所以当我运行程序,更改数据,关闭程序,然后再次运行 – 更改仍然存在,但是当我打开db(不在programm中)时,没有更改保存,再次运行 – 所有更改都消失了。
PS:当我提交更改,然后运行程序几次,所有更改也消失,之后(3-4次运行)

当我们在VS中的项目根目录中添加.mdb时,在更改结构时,VS默认删除调试文件夹中的.mdb文件并替换新文件; 现在你可以改变这种侮辱:

1-右键单击.mdb文件并选择选项

2-设置Copy To Output Directory Do Not Copy

您更新语句的WHERE子句很可能不会找到要更新的任何记录。

https://weblogs.asp.net/stevewellens/archive/2009/10/16/why-sql-updates-fail-three-reasons.aspx

上述就是C#学习教程:OleDbCommand.ExecuteNonQuery()不保存ms访问数据库中的更改分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/997808.html

(0)
上一篇 2021年12月26日
下一篇 2021年12月26日

精彩推荐