Вам необходимо срочно исследовать внедрение SQL и ОСТАНОВИТЬ ИСПОЛЬЗОВАТЬ конкатенацию строк для построения оператора вставки SQL ПРЯМО СЕЙЧАС .
Вынеобходимо использовать правильную технику - параметризованные запросы - всегда - NO исключения!
А также, это общепринятая лучшая практика для перечисления столбцов в вашем INSERT
, чтобы избежать проблем, когда таблицы изменяют свои столбцы (подробнее об этом здесь: Вредные привычки: использовать SELECT * / опустить список столбцов ).
Используйте этот код какобразец / шаблон:
string insertQuery = @"INSERT INTO dbo.Table1 (FirstName, LastName, City)
VALUES (@FirstName, @LastName, @City);";
using (SqlCommand cmd = new SqlCommmand(insertQuery, con))
{
cmd.Parameters.Add("@FirstName", SqlDbType.VarChar, 50).Value = firstname.Text;
cmd.Parameters.Add("@LastName", SqlDbType.VarChar, 50).Value = lastname.Text;
cmd.Parameters.Add("@City", SqlDbType.VarChar, 50).Value = city.Text;
con.Open();
cmd.ExecuteNonQuery();
con.Close()
}