如何在更改数据库后保存数据集

本文关键字:保存 数据集 数据库 | 更新日期: 2023-09-27 18:05:46

如果我有一个名为myDs的数据集,并且我在循环中通过直接访问编辑其中的字段,如以下所示:

for (int i = 0; i < myDS.Tables[TableName].Rows.Count; i++)
{
    //some function or web method to get the id value of the record being updated
    int n = getNewNumber();
    //updating the dataset record according to some condition
    if (n == 0)
    {
        myDS.Tables[TableName].Rows[i]["id"] = n;
        myDS.Tables[TableName].Rows[i]["description"] = "some data";
    }
    else
    {
        myDS.Tables[TableName].Rows[i]["id"] = n;
        myDS.Tables[TableName].Rows[i]["description"] = "new data";
    }
}

我如何使这些变化在数据库中完成,因为我可以看到它在GridView当我做databind(),但数据库不受影响,我尝试使用填充&OdbcDataAdapter和OdbcCommandBuilder的更新方法?

如何在更改数据库后保存数据集

尝试TableAdapter。本文中显示的更新过程:如何:更新数据库中的记录。

另外,请确保您不仅具有对您试图连接的数据库的必要访问权限,而且还具有更新所需表中的记录的权限。您可能遇到了SQL Server配置问题,导致代码无法更新。

由于是odbc,您可以使用OdbcDataAdapter;然后调用:

adapter.Update(myDS.Tables[TableName]);

免责声明:就我个人而言,我从不使用DataSet为....任何东西。YMMV .

在loop

后输入两行
myDS.AcceptChanges();
adapter.Update(myDS.Tables[TableName]);