DataBase DataSet を DataGridView にアタッチして、そのコンテンツを自動的に表示しました
しかし今、この DGV で行われた変更を収集して、データベースを更新する必要があります。どうすればよいですか?
DataBase DataSet を DataGridView にアタッチして、そのコンテンツを自動的に表示しました
しかし今、この DGV で行われた変更を収集して、データベースを更新する必要があります。どうすればよいですか?
a を使用して、コマンドSqlCommandBuilder
を作成および実行できます。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]
. 変更をデータベースに送り返すために、上記の方法を使用するとUpdate
、変更を送り返す SQL コマンドが自動的に作成および実行されます。データベース。