OleDbCommand.ExecuteNonQuery()不更改保存在MS Access数据库 [英] OleDbCommand.ExecuteNonQuery() does not save changes in ms access database

查看:279
本文介绍了OleDbCommand.ExecuteNonQuery()不更改保存在MS Access数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有的.mdb 数据库和code是这样的:

I have .mdb database, and code like this:

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

我得到的数据从数据库,改变它在我的GUI PROGRAMM,然后将其保存在数据库中。变化的扑救,但不是在分贝(我不知道在哪里),所以当我运行程序,更改数据,关闭程序,然后重新运行 - 更改均保持不变,但是当我打开数据库(而不是在PROGRAMM),有没有改变保存,并再次运行 - 所有的变化消失
。 PS:当我提交更改,然后运行程序几次,所有的变化消失得,后(3-4道)

I get data from db, change it in my gui programm, then save it in db. Changes saves, but not in db (I don't know where), so when I run program, change data, close program, then again run - changes remain, but when I open db (not in programm), there are no changes saved, and again run - all changes disappear.
PS: when I commit changes, then run program several times, all changes disappear too, after (3-4 runs)

推荐答案

当我们我们添加的.mdb 项目根VS,当改变结构,VS默认情况下删除的.mdb 文件中的debug文件夹,并更换新的文件;现在你可以改变这种defult:

When we we add .mdb in project root in VS ,when change structure ,VS default delete .mdb file in debug folder and replace new file; now you can change this defult :

1右键点击的.mdb 文件,并选择选项

1- right click .mdb file and select option

2 - 集复制到输出目录不要复制

这篇关于OleDbCommand.ExecuteNonQuery()不更改保存在MS Access数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆