C#操作ACCESS不能更新 C#ACCESS 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是用第二个程序的结果。其中,前5行是在ACCESS中输入的,第六行是程序操作的,能添加到GridView列表,但ACCESS表实际上没有被插入数据。 catch修改为catch (Exception ex){ MessageBox.Show(ex.Message); ...}看输出什么错误你的sql中,如果id列不是字符串而是数字,不要加单引号 加不加单引号都一样,函数返回成功,基表没变化。修改catch 因为本身它没返回错误,所以catch不到,只有故意输入了重复了 Id,它才会指出错误,这个错误是常规错误,因为我们知道它就是输入了重复的键。但是,基表并没更新,却报告成功或者那个常规错误,就是这个情况。 还是用第一种方法插入一次,你要到项目所在的Bin\debug\目录下去检查数据库文件。 实在没辙,难道要让我回到VFP了?VFP数据库表实在不安全啊! 是用的第一种,查看文件什么的我都注意了,因为程序退出再进去,添加或修改的数据还是没变化,还是只有前五行,也只有这五行。用ACCESS打开也一样。 连接字符串中 Provider=Microsoft.Jet.OLEDB.4.0;替换成Provider=Microsoft.ACE.OLEDB.12.0;试试呢? 我没说过失败啊。曾经非常麻烦地用C#编程写了创建ACCESS的程序,以为是ACCESS的问题,然而不是这个问题 在sql server中,程序很正常。因为是桌面应用程序,不可能为客户装sql server吧,就是sql server compact,它没有存储过程和视图,感觉很不好。如果ACCESS能行,最好,不行的话,VFP就向我招手了。 在插入数据前后分别检查mdb文件的最后修改日期,看是否文件被修改过。如果被修改过但打开数据库还是没更新,那我只好说邪门了。 sql server Compact 4.0绝对比access强,你也可以用sqlite的。 你是怎么看里面内容的?直接双击mdb文件?好奇怪的问题哦 办公室和家里两台台式电脑,现在用的笔记本,win7 win8,32位64位都有,都是这种情况,但是都是一个VS2013光盘装的。装了ACCESS,当然可以打开mdb文件了。最近看了一下LightSwich,好有趣,那里有 caninsert,canupdate,candelete,难道C#也要这样? ACCESS并不比其他数据库更安全.既然你查询没有问题,用程序查询一下试试看 找到原因了,ACCESS数据库项目设置了“始终复制”,因而产生了问题,每次都回到原来的项目里的数据库。现在设置为“如果较新则复制”,问题就解决了。第一次用VS和C#,经验不足啊!谢谢大家回复。发现原因很偶然,在没有打开VS的时候,直接运行了DEBUG下面生成的程序,结果竟然真的成功了,数据插入修改都顺利,心情也不错。 Winform 怎么实现床体上的鼠标拉选 c#,WPF的控件如何实现顶置或上移一层 数据库查询 用代码如何打开组件类的CS文件(代码文件),如何用代码绑定WPF控件到 工具箱?来着有分啊 。。。 关于数据查询效率的问题 线程里面调用另外一个过程传递参数问题 我想用C#调用DTS,从一个数据库导入另一个数据库中。我不怎么作,请高手指点一下! TextBpx控件可以绑定到DataView吗? 如何在dategrid中隐藏部分记录? 请问:一个DataReader如何判空? DataTable如何删除某一行之后的行 OLEControl mc = new OLEControl();总是报错
修改为
catch (Exception ex)
{
MessageBox.Show(ex.Message);
...
}
看输出什么错误你的sql中,如果id列不是字符串而是数字,不要加单引号
修改catch
因为本身它没返回错误,所以catch不到,只有故意输入了重复了 Id,它才会指出错误,这个错误是常规错误,因为我们知道它就是输入了重复的键。但是,基表并没更新,却报告成功或者那个常规错误,就是这个情况。
替换成Provider=Microsoft.ACE.OLEDB.12.0;试试呢?
曾经非常麻烦地用C#编程写了创建ACCESS的程序,以为是ACCESS的问题,然而不是这个问题
既然你查询没有问题,用程序查询一下试试看
发现原因很偶然,在没有打开VS的时候,直接运行了DEBUG下面生成的程序,结果竟然真的成功了,数据插入修改都顺利,心情也不错。