gpt4 book ai didi

c# - 如何使用foreach将datagridview记录插入mysql数据库

转载 作者:行者123 更新时间:2023-11-28 23:42:38 27 4
gpt4 key购买 nike

此代码运行良好来自 dataGridview 的值也已成功保存,但在将输入的值保存到数据库后,表中还会添加一个空行

    private void save_Click(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.Rows)// picks data from dataGridview
{

try // MySql connection
{
string MyConnectionString = "Server=localhost; Database=markcreations; Uid=root; Pwd=admin";
MySqlConnection connection = new MySqlConnection(MyConnectionString);
MySqlCommand cmd = new MySqlCommand();
cmd = connection.CreateCommand();
cmd.Parameters.AddWithValue("@invoice", row.Cells["Invoice"].Value);
cmd.Parameters.AddWithValue("@jobOrder", row.Cells["jobOrder"].Value);
cmd.Parameters.AddWithValue("@dateTime", row.Cells["Date"].Value);
cmd.Parameters.AddWithValue("@clientCode", row.Cells["Client Code"].Value);
cmd.Parameters.AddWithValue("@clientName", row.Cells["Client Name"].Value);

cmd.CommandText = "INSERT INTO record(invoice, jobOrder, dateTime, clientCode, clientName)VALUES(@invoice, @jobOrder, @dateTime, @clientCode, @clientName)";
connection.Open();
cmd.ExecuteNonQuery();
connection.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
MessageBox.Show("Records inserted.");
}

最佳答案

看起来您在 DataGridView 中有一个空行,可能是最后一行,用于新行。该行的每一列都有空值,如果您不检查它,它会插入 NULL。

您可以使用 row.IsNewRow 来检查新行。

关于c# - 如何使用foreach将datagridview记录插入mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34103266/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com