【发布时间】:2012-02-04 20:12:13
【问题描述】:
我设置了 DataGridView 和其他 UI 组件以允许用户编辑 SQLite DB 中的数据。但是这些更改(即使它们在应用程序中正确显示)不会保存到数据库中。我试过这段代码
aBindingSource.EndEdit();
dbDataSetA.GetChanges();
aTableAdapter.Update(dbDataSetA.Accounts);
但是有并发异常:
System.Data.DBConcurrencyException 未处理 Message=Concurrency 违规:UpdateCommand 影响了预期的 1 条记录中的 0 条。
那么,伙计们,我应该如何将 bindingsource 更改提交到 DB?
后编辑 我在启动程序时遇到了这个异常,然后单击 DataGridView 中的第二行,然后单击第三行,这次程序引发了并发异常。希望他的帮助能更详细地解决这个问题。
提前谢谢各位!
【问题讨论】:
-
并发异常意味着:在您阅读数据和尝试更新数据之间,某人或某事更改了您的数据。基本上,在这种情况下,您要么需要再次加载数据并向用户显示新数据,以便他再次进行更改,要么需要一些冲突解决策略来将新更改合并到数据库中。
-
@marc_s 好的,谢谢,马克!那么如何再次加载数据以显示使用变化?
标签: c# .net winforms dataset bindingsource