CSFramework开发框架报错:违反并发性:UpdateCommand影响了预期1条记录中的0条
CSFramework开发框架报错:违反并发性:UpdateCommand影响了预期1条记录中的0条
扫一扫加微信
UpdateCommand和DeleteCommand出现DBConcurrencyException异常。
调试提示:违反并发性: DeleteCommand 影响了预期 1 条记录中的 0 条;或 违反并发性: UpdateCommand影响了预期 1 条记录中的 0 条。
DataAdapter.Update方法
在更新(Update)或删除(Delete)操作过程中当受影响的行数等于零时由 DataAdapter 引发的异常。
C# Code:
//使用基于ADO构架的SqlClient组件更新数据
SqlDataAdapter adp = new SqlDataAdapter();
adp.RowUpdating += new SqlRowUpdatingEventHandler(OnAdapterRowUpdating);
adp.UpdateCommand = GetUpdateCommand(gen, _CurrentTrans);
adp.InsertCommand = GetInsertCommand(gen, _CurrentTrans);
adp.DeleteCommand = GetDeleteCommand(gen, _CurrentTrans);
adp.Update(dt);
//来源:C/S框架网 | www.csframework.com | QQ:23404761
SqlDataAdapter adp = new SqlDataAdapter();
adp.RowUpdating += new SqlRowUpdatingEventHandler(OnAdapterRowUpdating);
adp.UpdateCommand = GetUpdateCommand(gen, _CurrentTrans);
adp.InsertCommand = GetInsertCommand(gen, _CurrentTrans);
adp.DeleteCommand = GetDeleteCommand(gen, _CurrentTrans);
adp.Update(dt);
//来源:C/S框架网 | www.csframework.com | QQ:23404761
解决方法:
1、UpdateCommand的问题:检查更新的字段的原始值(主键值)是否为空值,或者 原始值在数据库中不存在。
2、DeleteCommand的问题:若是删除操作报错,是因为当前提交的数据源原始值(主键值)空值,或者主键对应的记录后台已经不存在,或被其他用户删除。
3、综上所述,错误根本原因是数据库找不到主键对应的记录,多人并行操作也可能引发这样的异常。
扫一扫加微信
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网