如何更新TableAdapter
本文关键字:TableAdapter 更新 何更新 | 更新日期: 2023-09-27 17:51:24
我正在编写一个使用数据库的WindowsApplication
程序。我用DataGridView
显示数据库值。目前,我希望有可能通过DataGridView
更新数据库,因此我编写了以下代码:
private void MainForm_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'databaseDataSet1.products' table. You can move, or remove it, as needed.
this.productsTableAdapter1.Fill(this.databaseDataSet1.products);
}
private void upButton1_Click(object sender, EventArgs e)
{
this.productsTableAdapter1.Update(this.databaseDataSet1.products);
MessageBox.Show("הנתונים עודכנו בהצלחה!");
}
问题是没有将值更新到数据库中。如果有人能帮我解决这个问题,或者更好的是,解释一下如何使用DataGridView
,我会很高兴的,因为我在互联网上没有找到任何有用的东西。
this.Validate();
this.productsBindingSource.EndEdit();
this.productsTableAdapter1.Update(this.databaseDataSet1.products);
//this.productsTableAdapter1.UpdateAll(this.databaseDataSet1);
假设您使用DataTable
和DataAdapter
填充datagridview,您可以执行以下操作:
private void SaveChanges()
{
try
{
if (sqlDataAdapter != null && dataTable.GetChanges() != null)
sqlDataAdapter.Update(dataTable);
}
catch (Exception exception)
{
MessageBox.Show(exception.Message);
}
}
这将自动生成任何插入,更新或删除语句需要根据您的DataTable更新数据库
你应该将datagridview绑定到DataTable或BindingList对象,因为它们是可观察的。
try
{
this.Validate();
this.customersBindingSource.EndEdit();
this.customersTableAdapter.Update(this.northwindDataSet.Customers);
MessageBox.Show("Update successful");
}
catch (System.Exception ex)
{
MessageBox.Show("Update failed");
}