2015-04-20 2 views
0

Я использую этот код, чтобы удалить из базы данных любой записи я хочуУдаление и обновление данных в базе данных и обновления DataGridView

string cs = "Data Source=CODRINMA\\CODRINMA;Initial Catalog=BusManager; Trusted_Connection=True;"; 

string delete = "DELETE FROM Autogari WHERE [email protected]"; 

try 
{ 
    using (SqlConnection con = new SqlConnection(cs)) 
    { 
     con.Open(); 
     SqlCommand cmd = new SqlCommand(delete, con); 
     cmd.Parameters.Clear(); 
     cmd.Parameters.AddWithValue("@IDAutogara", int.Parse(grdAutogari.CurrentRow.Cells[0].FormattedValue.ToString())); 
     cmd.ExecuteNonQuery(); 
     MessageBox.Show("Autogara a fost stearsa cu succes!"); 
     con.Close(); 
    } 
} 
catch (Exception er) { MessageBox.Show(er.Message); } 

Но, в то же время я хотел бы, что DataGridView, чтобы обновить его автоматически (удаленные запись исчезнет), чего не происходит. Что мне не хватает?

+0

Попробуйте 'Gridviewname.Databind()' после удаления –

+0

Если вы хотите, чтобы ваша сетка отражала изменения в базе данных, вам нужно ее перестроить. Он не собирается делать это сам по себе. Возможно, вы захотите добавить некоторые записи в свой улов. Поскольку он стоит, единственный человек, который знает, что что-то случилось, - это пользователь, который не поставил вас в отличное положение, чтобы даже знать, что произошла ошибка, не говоря уже об исправлении. Также я бы порекомендовал вам взглянуть на эту статью. http://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue-already/ –

+0

Функция вызова сетки после удаления. –

ответ

0

Вам необходимо выполнить запрос еще раз, а не запрос на удаление, но запрос select * для заполнения или обновления вашего datagridview после удаления строки.

Смежные вопросы