无法将数据从 DataSet 更新到 C# 和 SQL Server 上的数据库

Posted

技术标签:

【中文标题】无法将数据从 DataSet 更新到 C# 和 SQL Server 上的数据库【英文标题】:Can't update data from DataSet to database on C# & SQL Server 【发布时间】:2018-05-16 02:50:04 【问题描述】:

我正在编写一个关于使用 C# 和 SQL Server 进行库存管理的桌面应用程序。现在我在将数据从DataSet 更新到数据库时遇到问题。

当我从应用程序中删除数据时,数据已从DataSet 中删除,但并未从数据库中删除。

这是代码:

int Pos = SearchArticleIndexByRef(DGVStock.CurrentRow.Cells[0].Value.ToString());
Ds.Tables["Article"].Rows.RemoveAt(Pos);        
SdaArt.Update(Ds , "Article");
DGVStock.DataSource = Ds.Tables["Article"];

【问题讨论】:

这个输出是什么?如果您希望获得更好的答案,请向人们展示您的尝试。此外,如果您删除请求帮助的大粗体部分,问题会更整洁。 deleted item in dataset not deleted in database的可能重复 msdn.microsoft.com/en-us/library/… 建议您使用 Delete 而不是 Remove / RemoveAt 【参考方案1】:

您必须在 DataTable 上调用 AcceptChanges 才能提交所做的更改。这样做将删除标记为已删除的行。 (以及对 DataTable 所做的任何其他更改)

【讨论】:

以上是关于无法将数据从 DataSet 更新到 C# 和 SQL Server 上的数据库的主要内容,如果未能解决你的问题,请参考以下文章

C#程序,将数据从dataset导出到excel表格里的时间类型为啥显示成“#”号呢

C#使用DataSet Datatable更新数据库的三种实现方法

C#中IDataReader和DataSet的区别是啥呢?

如何使用 DataAdapter.Update 方法同时更新 Access 数据库和 .NET DataSet 对象?

C# DataSet:更新数据库

C#基础之使用DataSet与Datatable更新数据库的三种实现方法