【问题标题】:DataTable delete multiple rows and Update with OleDbDataAdapterDataTable 删除多行并使用 OleDbDataAdapter 更新
【发布时间】:2016-03-09 16:49:06
【问题描述】:

我想从 DataTable 中删除并将更改更新到我的数据库中。

一行的简单情况按预期工作:

CarRow carRow = MyDataSet.CarTable.FindByCarId(carId);
carRow.Delete();
odaCar.Update(new DataRow[] {carRow});

但如果我有多行,那么我会得到 并发冲突

CarRow[] carRows = MyDataSet.CarTable.FindByCarType(CarType.Sedan);
foreach(CarRow c : carRows) 
{
    c.Delete();
}
odaCar.Update(carRows);

“并发冲突:DeleteCommand 影响了预期的 1 条记录中的 0 条。”

删除多行并随后通过 OleDbDataAdapter 进行更改的正确方法是什么?

【问题讨论】:

  • 您还有其他代码可以让我更新数据库或数据集中的记录吗?
  • @Josh 没有。就是这样。

标签: c#


【解决方案1】:

问题出在 OleDbAdapter 上。

我正在使用的数据集没有主键,因此我不能像那样使用Update

通过添加 PK 来修复它。

【讨论】:

    猜你喜欢
    • 2012-04-27
    • 1970-01-01
    • 1970-01-01
    • 2011-08-18
    • 1970-01-01
    • 2012-12-12
    • 1970-01-01
    • 2012-02-09
    • 1970-01-01
    相关资源
    最近更新 更多