в таблицу строку. Хочу сделать параметрический запрос. Запрос с параметрами. Против SQL инъекций. По факту методом записывается имя параметра "@param" вместо его значения "test"
string connStr = "server=" + server + ";user=" + databaseUserId + ";database=" + databaseName + ";port=" + port + ";password=" + databasePassword;
MySql.Data.MySqlClient.MySqlConnection conn = new MySql.Data.MySqlClient.MySqlConnection(connStr);
conn.Open();
string query = "insert into test (testParam) values('@param');";
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand(query, conn);
var p = new MySql.Data.MySqlClient.MySqlParameter();
p.ParameterName = "@param";
p.Value = "test";
cmd.Parameters.Add(p);
cmd.ExecuteNonQuery();
conn.Close();
ага! все понял! Дело в кавычках! string query = "insert into test (testParam) values(@param);";
Ну да ты вставля строку 'ильяпарам' вместо значения
да-да-да, уже понял.
подскажи еще пожалуйста, как вставить массив параметров? Не получается ( string connStr = "server=" + server + ";user=" + databaseUserId + ";database=" + databaseName + ";port=" + port + ";password=" + databasePassword; MySql.Data.MySqlClient.MySqlConnection conn = new MySql.Data.MySqlClient.MySqlConnection(connStr); conn.Open(); MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand(query, conn); MySql.Data.MySqlClient.MySqlParameter[] parameters = new MySql.Data.MySqlClient.MySqlParameter [] { new MySql.Data.MySqlClient.MySqlParameter() {"@param", "paramValue1"} }; cmd.Parameters.AddRange(parameters); cmd.ExecuteNonQuery(); conn.Close();
а что не поулчается что пишет
и список пробовал создавать. Тоже не вышло.
ну надо же что-то делать? )))))
MySql.Data.MySqlClient.MySqlParameter[] parameters = new MySql.Data.MySqlClient.MySqlParameter []() { new MySql.Data.MySqlClient.MySqlParameter() {"@param", "paramValue1"} }; А так попробуй
та нет, так точно не получится
вобще странная ошибка, должно получится
тоже так кажется.
так че там за ; недостающие
этот скрин с ошибкой в райнтайме !
вангую что ты пиздишь и возможно код поправил просто позже
потому что ошибка гласит о типе MyParameters а в коде у тебя MyParameters[]
та зачем мне это. Это мы просто не правильно объект создали. Квадратные скобки вместе с круглыми я еще не встречал при создании объекта.
ну и теперь без круглых
Здесь же все то же самое
Нет я не хочу другой код без ошибок, а тот без ошибок.
прогресс не стоит на месте. Зачем мне от него отставать? Я юзинги прописал и лишний код убрал.
Так там ном код был в отличии от этого
Обсуждают сегодня