【发布时间】:2015-01-12 19:30:33
【问题描述】:
我正在用 C# 编写一个 Winforms 应用程序,它允许用户使用 datagridview 编辑和更新数据库。
问题是,我无法让它工作。我设法实现的唯一一件事是更新 datagridview 显示的内容,但是当我进入数据库表时,数据没有任何变化。 我已经搜索了很多讨论这个问题的网站,但还没有对我有用。
到目前为止我尝试过的事情:
- 将数据库绑定到 datagridview
- 将
Copy to Output Directory属性更改为Copy if newer - 使用
dataAdapter.Update((DataTable)bindingSource1.DataSource)执行或不执行任何更新查询。 - 在没有
dataAdapter.update(...)的情况下执行更新查询。
这是我的代码:
public Form1()
{
InitializeComponent();
GetData("SELECT * FROM Table1");
}
void GetData(string selectCommand)
{
SqlConnection conn = new SqlConnection(Properties.Settings.Default.NewDBTESTConnectionString);
dataAdapter = new SqlDataAdapter(selectCommand, conn);
commandBuilder = new SqlCommandBuilder(dataAdapter);
table = new DataTable();
dataAdapter.Fill(table);
bindingSource1.DataSource = table;
dataGridView1.DataSource = bindingSource1;
}
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
dataAdapter.Update((DataTable)bindingSource1.DataSource);
}
【问题讨论】:
-
您需要向数据适配器添加插入和更新命令
-
感谢您的快速回复。您将如何以及在何处使用这些命令,因为它不适合我。
标签: c# sql sql-server database datagridview