У меня есть этот код, где я пытаюсь вставить значения в таблицу Планеты через текстовые поля. Но я продолжаю получать ошибку. Неправильный синтаксис рядом с «Hoth» (который является tbName.Text). Больше информации не приводится.Неправильный синтаксис около 'Hoth'
string q = "INSERT INTO [Planets] VALUES('" + tbName.Text + "','" + tbRace.Text + "',''" + tbDesc.Text + "'');";
SqlConnection con = new SqlConnection(cs);
SqlCommand query = new SqlCommand(q, con);
con.Open();
SqlDataReader readers = query.ExecuteReader();
readers.Close();
con.Close();
Это проблема уязвимости SQL-инъекций. Для этого используйте параметры. https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.parameters(v=vs.110).aspx Если вы не исправляете его с параметрами, у вас есть слишком много синусов цитаты вокруг tbDesc.Text. –
Я рассмотрю вопрос о параметризации запроса. Двойные одинарные кавычки были там, чтобы исправить еще одну неправильную проблему синтаксиса. Незакрытый кавычек рядом ');' –
'' '"+ tbDesc.Text +"' ''Не использовать 2 одинарные кавычки - это означало бы экранирование кавычек –