我将 DataBase DataSet 附加到 DataGridView 以自动显示其内容
但是现在我需要收集在此 DGV 中所做的更改以更新我的数据库我该怎么做?
我将 DataBase DataSet 附加到 DataGridView 以自动显示其内容
但是现在我需要收集在此 DGV 中所做的更改以更新我的数据库我该怎么做?
您可以使用 aSqlCommandBuilder
创建和执行Update
命令:
private void UpdateDatabase()
{
//Create an adapter to get the schema and point to the correct table
//Can do something like SELECT * from table_name where 0 = 1
SqlDataAdapter adapt = new SqlDataAdapter(yourSelectString, yourConnectionString);
SqlCommandBuilder builder = new SqlCommandBuilder(adapt);
try
{
adapt.Update(ds.Tables[0]);
ds.Tables[0].AcceptChanges();
}
catch (Exception ex)
{
//Handle any exception here
}
}
这会Update
根据您的DataTable
.
编辑
您提供的代码(并且由于某种原因被删除)正确绑定DataSet
到您的DataGridView
. 当您更改单元格中的值时,DataGridView
它会自动更改底层DataTable
(在您的情况下ds.Tables[0]
。为了将更改发送回数据库,使用上述方法将自动创建并执行一个 SQLUpdate
命令将更改发送回数据库。