Use a parameterized query such as this (untested):
var cmd = new SqlCommand();
cmd.CommandText = "UPDATE input_tb SET place_no=@place,price=@price,curr=@curr,E_date=@E_date,m_type=@m_type,matter_q=@matter_q,unit1=@unit1',Worker=@Worker,f_note=@f_note FROM input_tb INNER JOIN Place_tb ON input_tb.place_no = Place_tb.place_no INNER JOIN Matter_tb ON input_tb.matter_no = Matter_tb.m_no WHERE ID=@ID";
cmd.Parameters.AddWithValue("@place", update1.SelectedRows[0].Cells[9].Value);
cmd.Parameters.AddWithValue("@price", update1.SelectedRows[0].Cells[8].Value);
cmd.Parameters.AddWithValue("@curr", update1.SelectedRows[0].Cells[7].Value);
cmd.Parameters.AddWithValue("@E_date", update1.SelectedRows[0].Cells[6].Value);
cmd.Parameters.AddWithValue("@m_type", update1.SelectedRows[0].Cells[4].Value);
cmd.Parameters.AddWithValue("@matter_q", update1.SelectedRows[0].Cells[3].Value);
cmd.Parameters.AddWithValue("@unit1", update1.SelectedRows[0].Cells[2].Value);
cmd.Parameters.AddWithValue("@Worker", update1.SelectedRows[0].Cells[1].Value);
cmd.Parameters.AddWithValue("@f_note", update1.SelectedRows[0].Cells[0].Value);
cmd.Parameters.AddWithValue("@ID", update1.SelectedRows[0].Cells["رقم الادخال"].Value);
The first thing I notice is that you did not use
Cells[5]
- only you can tell if that is correct.
Using parameters like this will probably solve your problem as the Parameters will assume the correct type.