Обновление текущей строки в моей таблице в Visual Basi c Ms-Access с использованием BindingSource - PullRequest
0 голосов
/ 08 марта 2020

Это моя кнопка обновления, которая обновляет текущую информацию о введенной мной записи ... Но мне кажется, что я всегда получаю сообщение об ошибке, и я не совсем понимаю, как ее исправить.

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
...