Перед тем, как комментировать, пожалуйста, обратите внимание, что я понимаю, что мой код уязвим для SQL инъекций, пожалуйста игнорировать любые комментарии о нем в уязвима для целей простотыUpdate Query C# MySQL Forms
Я проверяемых вокруг веб-сайт для ответов, но ни один из них не соответствует моей ситуации, многие из них - PHP.
Я пытаюсь обновить информацию о базе данных MySQL из приложения C# Forms на Visual Studio 2012, поэтому я разрешил пользователю вводить данные, но я хочу, чтобы они могли обновлять свои данные.
Я пробовал всевозможные методы, многие из которых дают мне ошибки, я чувствую, что очень близко к этому методу.
string Connection = "server = xxxx; " + "database = xxxxx; " + "uid = xxxx;"+ "pwd = xxxxx;";
MySqlConnection Conn = new MySqlConnection(Connection);
try
{
MySqlDataAdapter dAdapter = new MySqlDataAdapter("SELECT * FROM example", Conn);
DataTable dTable = new DataTable();
dAdapter.Fill(dTable);
DataRow dr = dTable.NewRow();
dr["TestData1"] = Convert.ToInt32(cboTestData1.Text);
dr["TestData2"] = txtTestData2.Text;
dr["TestData3"] = Convert.ToInt32(txtTestData3.Text);
dTable.Rows.Add(dr);
string Query = "Update example(field 1, field 2, field 3) VALUES ("TestData1", "TestData2", "TestData3")";
dTable.Rows.Add(Query);
MySqlCommandBuilder commandBuilder = new MySqlCommandBuilder(dAdapter);
int iRowsAffected = dAdapter.Update(dTable);
if (iRowsAffected == 1)
{
MessageBox.Show("Record Added", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show("Error adding record", "Record Added", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
catch (MySqlException ex)
{
MessageBox.Show(ex.Message);
}
Проблема в том, что ему не нравится код «Запрос» из-за его плохого. Это дает мне это сообщение об ошибке
Дополнительная информация: Входная строка не была в правильном магазине format.Couldn't в ID колонке. Ожидаемый тип Int32.
Я осмотрел интернет для решений, но все они либо не имеют такой же ситуации, как у меня, или связаны с кодом PHP.