2013-03-20 7 views
0

Я знаю Это просто, но я не могу сделать это правильно или найти ответ на поиск в Google.Обновление/Редактирование базы данных

Я хочу обновить/изменить данные. на сервере базы данных, щелкнув данные, которые отображаются на моем DataGridView.

ниже мой подредактор, код не автоматически извлекает запись в текстовое поле.

Private Sub btnEdit_Click(ByVal sender As System.Object, 
    ByVal e As System.EventArgs) Handles btnEdit.Click 

    Dim transaction As SqlTransaction = Nothing 

    With New SqlConnection(connectionString) 
    Try 
     Call .Open() 
     transaction = .BeginTransaction() 
     With .CreateCommand() 
     .Transaction = transaction 
     .CommandText = "UPDATE [tbl_info] SET [Name][email protected] WHERE [ID][email protected];" 
     With .Parameters 
      .AddWithValue("ID", txtID.Text) 
      .AddWithValue("Name", txtName.Text) 
     End With 
     Call .ExecuteNonQuery() 
     Call transaction.Commit() 
     Call MessageBox.Show("has been update successfully") 
     End With 
    Catch ex As Exception 
     Call transaction.Rollback() 
     Call MessageBox.Show(ex.Message, "Error") 
    Finally 
     Call .Close() 
    End Try 
    End With 
    RefreshData() 

    Call txtID.Clear() 
    Call txtName.Clear() 
End Sub 
+0

Каково ваше соединениеString? Вы получаете какие-то исключения или ошибки? Или это просто не обновление? Что это за сервер SQL? MS SQL-сервер? –

+0

хорошо, я не получаю никаких ошибок. код работает. конечно, мне нужно ввести вручную идентификатор, просто чтобы отредактировать данные, отображаемые в моем gridview. – newbie

+0

Пожалуйста, не публикуйте свои вопросы во ВСЕХ КАПС. Это усложняет их чтение, это раздражает, и считается, что это СУДЬБА (что грубо). Проводка в надлежащем случае упрощает чтение вашего вопроса и улучшит ваши шансы получить ответ. Есть причина, по которой они придумали клавишу Shift. :-) Пожалуйста, используйте его. Благодарю. –

ответ

0

На строке ExecuteNonQuery запишите количество затронутых строк.

Dim rc As Integer = .ExecuteNonQuery() 

Если rc возвращается как ноль, мы можем сказать, что запрос запущен и не нашел ничего для обновления.

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