提交更改纯 SqlCommand

本文关键字:SqlCommand 提交 | 更新日期: 2023-09-27 18:32:20

我需要将 2 向绑定数据库绑定到 DataGrid,所以我使用此方法:

    private void SetTable(string tableName)
    {
        var dataGridView1 = new DataGridView { DataSource = GetData(tableName), Dock = DockStyle.Fill };
        groupBox1.Text = tableName;
        groupBox1.Controls.Clear();
        groupBox1.Controls.Add(dataGridView1);
    }
    private static DataTable GetData(string tableName)
    {
        using (var connection = new SqlConnection(ConnectionString))
        {
            var command = new SqlCommand(string.Format("SELECT * FROM {0}", tableName), connection);
            connection.Open();
            var adapter = new SqlDataAdapter(command);
            var result = new DataTable();
            adapter.Fill(result);
            return result;
        }
    }
    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        SetTable(comboBox1.Text);
    }

所以我有单向绑定。所以我想做一些更改,然后将它们发送回数据库。所以问题很简单:我应该手动完成还是SubmitChanges()存在 L2S 的类似物?我应该只使用 SQL 请求。没有 EF,没有 L2S 等。

所以我想从DataGrid中获取一些修改/添加/删除的行并在数据库中更新它们。我可以手动完成,使用 2 个列表并在进行 except 查询后执行此操作,但我想自动获取它。

提交更改纯 SqlCommand

您可以通过调用 GetChanges() 和/或使用 TableAdapter 直接更新来确定更改的内容。