我有一个DataGridView控件和一个保存按钮。点击保存按钮后,我想通过DataAdapter Update()命令将对DataGridView所做的任何更改反映到我的数据库中。但是,点击保存按钮并重新加载表单后,更新不在那里。对DataGridView的更改没有反映在数据库中
这里是目前保存按钮全部代码:
private void btnSave_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("Data Source=addtool.database.windows.net;Initial Catalog=AddToolToInventoryDB;User id=kanerbw; Password=Rabaraba!11;");
DataTable dt = new DataTable();
SqlDataAdapter adapter = new SqlDataAdapter("select * from ToolTB", con);
SqlCommandBuilder myBuilder = new SqlCommandBuilder(adapter);
con.Open();
SqlCommandBuilder scb = new SqlCommandBuilder(adapter);
myBuilder.GetUpdateCommand();
adapter.UpdateCommand = myBuilder.GetUpdateCommand();
adapter.Update(dt);
con.Close();
}
编辑:我忘了我的DGV的数据源设置为数据表。这里的工作代码:
private void btnSave_Click(object sender, EventArgs e)
{
using (var con = new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter("select * from ToolTB", con);
SqlCommandBuilder myBuilder = new SqlCommandBuilder(adapter);
dgvProductInfo.DataSource = dt;
adapter.UpdateCommand = myBuilder.GetUpdateCommand();
adapter.Update(dt);
dt.Clear();
adapter.Fill(dt);
}
}
感谢您的帮助。我正在使用Winforms和DataGridView,因此我相应地调整了我的标签。我也实现了一个'using'语句。但是,为了初始化DataAdapter,您需要指定一个'SELECT'命令。 –