private void button1_Click(object sender, EventArgs e)
{
con = new MySqlConnection(str);
try
{
con.Open();
MySqlCommand cmd = con.CreateCommand();
cmd.CommandText = "insert into balance values" + "(@i1,@i2,@i3,@i4,@i5)";
cmd.Parameters.Add("@i1", MySqlDbType.VarChar);
cmd.Parameters.Add("@i2", MySqlDbType.VarChar);
cmd.Parameters.Add("@i3", MySqlDbType.VarChar);
cmd.Parameters.Add("@i4", MySqlDbType.Float);
cmd.Parameters.Add("@i5", MySqlDbType.VarChar);
cmd.Parameters["@i1"].Value = busname;
cmd.Parameters["@i2"].Value = cusname;
cmd.Parameters["@i5"].Value = "345";
for (int i = 0; i < this.dataGridView1.Rows.Count-1; i++)
{
cmd.Parameters["@i3"].Value = this.dataGridView1[0,i].Value;
cmd.Parameters["@i4"].Value = this.dataGridView1[1,i].Value;
cmd.ExecuteNonQuery();
}
this.Close();
}
catch (MySqlException er)
{
MessageBox.Show("Error:" + er.ToString());
}
}
Finally i got expected output for this. The problem is, in DataGridView at the run time when we give values for 1 row then it will automatically takes another row in Row.Count property. So i gave "this.dataGridView1.Rows.Count-1" in for loop.