【问题标题】:INSERT column Values from dataGridView INTO database table从 dataGridView INTO 数据库表中插入列值
【发布时间】:2021-05-04 00:02:48
【问题描述】:

如下所示,我有一个 dataGridView 与数据库中的 tb2 表绑定,

如何将( res 列)数据插入到 tb 表中?

预期结果

【问题讨论】:

  • 请显示您的代码并准确描述什么不起作用。
  • @Crowcoder 我真的不知道将这些列值插入到数据库表中的代码是什么,我试图将它们存储到一个数组中,然后我使用了 INSERT 查询,但它没有按预期工作..

标签: c# database datagridview


【解决方案1】:

如果您将 access 用作数据库

保存 datagridview 的前 3 个单元格,上述查询仅适用于 3 及其倍数,但这样我可以

OleDbCommand command = new OleDbCommand (@"insert into tb
(hb,urea,ca)
Values 
(@hb,@urea,ca)", database.con);
int RowInsert = dataGridView1.RowCount / 3;
int i = 0;
int control =1;
while (true)
{
    command.Parameters.AddWithValue("@hb", $"{dataGridView1.Rows[i].Cells[2].Value}");
    command.Parameters.AddWithValue("@urea", $"{dataGridView1.Rows[i+1].Cells[2].Value}");
    command.Parameters.AddWithValue("@ca", $"{dataGridView1.Rows[i+2].Cells[2].Value}");
    command.ExecuteNonQuery();
    if (RowInsert==control)
      {
        break;
      }
    i += 3;
    control++;
}
MessageBox.Show("Success", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);

【讨论】:

  • 周到..感谢您的警告
  • 非常感谢.. 但我对 Rows[0].Cells[2]、Rows[1].Cells[2] 等代码进行了一些更改,以仅插入 res 列中的数据作为datagridview中的第三列......现在我如何使用for循环进入所有列数据并将它们插入到db中?是的,我使用 OLEDB
  • 只需添加 foreach "@ca", $"{dgr.Cells[2].Value}"
  • 如果你不能,我可以为你更新代码
  • 这个循环将三行插入数据库,我只需要一行。
猜你喜欢
  • 2017-06-14
  • 1970-01-01
  • 2016-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-09
  • 1970-01-01
相关资源
最近更新 更多