SQL Server中的数据集接受更改

时间:2009-06-02 12:08:07

标签: c# sql-server ado.net

我正在通过命令对象中的select query加载我的ADO.net数据集。如果我使用Acceptchanges清除数据集数据,它将删除sql server中的数据。

如果没有请让我知道该怎么做?

1 个答案:

答案 0 :(得分:1)

不,它不会。

您必须确保DataTable中的每个DataRow都标记为“已删除”。也就是说,每行的rowstate必须设置为Deleted。 您可以通过遍历所有行来完成此操作,并为每一行调用Delete方法。

然后,在调用AcceptChanges之前,您必须调用DataAdapter的Update方法。在完成数据库中的更改后,必须调用“AcceptChanges”,以指示数据集/数据表不再包含必须在数据库中保留的更改。 (调用AcceptChanges将删除RowState为'Deleted'的DataRows,并将所有其他DataRows的RowState更改为'UnChanged'。