Это моя кнопка обновления, которая обновляет текущую информацию о введенной мной записи ... Но мне кажется, что я всегда получаю сообщение об ошибке, и я не совсем понимаю, как ее исправить.
Private Sub EditBtn_Click(sender As Object, e As EventArgs) Handles EditBtn.Click
If MessageBox.Show("Do you want to save the changes?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) Then
Me.Validate()
Me.UserTableBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.ResortReservationSystemDataSet)
MessageBox.Show("Successfully Changed.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
End Sub
Я не знаю, так как я только что использовал BindingSource. Я просто скопировал коды «UserTableBindingNavigatorSaveItem_Click» для обновления каждой записи.
Ошибка: System.Data.DBConcurrencyException: нарушение параллелизма: команда UpdateCommand затронула 0 из ожидаемых 1 записей
Imports System.Data.OleDb
Public Class EmployeeForm
Dim conn As New OleDbConnection
Dim dbProvider As String = "Provider=Microsoft.ACE.OLEDB.12.0;"
Dim dbSource As String = "Data Source=|DataDirectory|\ResortReservationSystem.accdb"
Dim adapter As OleDbDataAdapter
Dim ds As DataSet
Dim currentId As String
Dim cmd As New OleDbCommand
Dim dt As DataTable
Private Sub UserTableBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs)
Me.Validate()
Me.UserTableBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.ResortReservationSystemDataSet)
End Sub
Private Sub EmployeeForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'ResortReservationSystemDataSet.userTable' table. You can move, or remove it, as needed.
Me.UserTableTableAdapter.Fill(Me.ResortReservationSystemDataSet.userTable)
conn.ConnectionString = dbProvider & dbSource
End Sub