Я добавляю, удаляя и обновляю данные в базу данных в Winforms. У меня есть gridview для всех форм добавления, удаления и обновления. После удаления записей при нажатии кнопки «удалить» удаленная запись должна быть немедленно удалена из dataGridView.Обновление данныхGridView элементов при добавлении или удалении записи в базе данных?
//// Обратите внимание, что DATABIND дает ошибку, то есть ссылку на использование или сборку отсутствует.
Код За:
private void btnDelete_Click(object sender, EventArgs e)
{
if (txtIDD.Text == "")
{
MessageBox.Show("Please fill ID no. of record to Delete", "Important Message");
}
else
{
try
{
OleDbCommand Cmd = new OleDbCommand();
Cmd.Connection = conn;
conn.Open();
Cmd.CommandText = "DELETE FROM AddressBook WHERE ID="+txtIDD.Text;
Cmd.CommandType = CommandType.Text;
Cmd.ExecuteNonQuery();
Cmd.Connection.Close();
conn.Close();
dataGridView3.Update();
MessageBox.Show("Delete Succesfull");
}
catch (System.Exception err)
{
dataGridView3.DataSource = dt;
dataGridView3.DataBind();
dataGridView3.Update();
this.label27.Visible = true;
this.label27.Text = err.Message.ToString();
}
}
}
Этот код уязвим для инъекций SQL – JohnnBlade
Просто мое личное мнение, но если сетка содержит da ta, который должен быть удален, я бы отменил логику: пользователь вводит текст, вы просматриваете соответствующую запись (записи) в своей сетке, выполняете удаление в db, а затем удаляете записи из привязки напрямую или из базовый источник данных. (добавлено преимущество в том, что вы также можете иметь действие удаления непосредственно в выбранных строках) –