将命令C#DataGridView更新为SQL



我正试图从C#项目数据网格视图更新SQL表"工作表";。然而,当我尝试进行更新时,我得到了这个错误

"更新找不到TableMapping["Work_Table"]或DataTable"Work_Table'";

有什么想法吗?

下面是我的代码:

try
{
using (SqlConnection conn = new SqlConnection(connString))
{
string query = @"Select * from person.addresstype";
SqlCommand cmd = new SqlCommand(query, conn);
SqlDataAdapter dAdapter = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
dAdapter.Update(ds, "Work_Table");
MessageBox.Show("Saved");
}
}
catch (Exception ee)
{
MessageBox.Show(ee.Message);

您需要从网格的.DataSource属性中检索DataTable。这将包含有关添加、更新和删除内容的信息。

您可以跳过该命令,将选择字符串和连接字符串直接传递给DataAdapter构造函数。

创建一个CommandBuilder,为DataAdapter.Update提供插入、更新和删除文本。将DataAdapter传递给CommandBuilder的构造函数。

private string connString = "Your connection string";
private void button1_Click(object sender, EventArgs e)
{
DataTable dt = (DataTable)dataGridView1.DataSource;
try
{
using (SqlDataAdapter dAdapter = new SqlDataAdapter("Select * from person.addresstype", connString))
using (SqlCommandBuilder cb = new SqlCommandBuilder(dAdapter))
{
dAdapter.Update(dt);
}
MessageBox.Show("Saved");
}
catch (Exception ee)
{
MessageBox.Show(ee.Message);
} 
}

最新更新