Pembaruan Visual Studio VB memerlukan UpdateCommand yang valid ketika melewati koleksi DataRow dengan baris yang dimodifikasi

Saya memiliki pembaruan tombol dan kodenya

Private Sub txtSave_Click(sender As Object, e As EventArgs) Handles txtSave.Click
        Me.Validate()
        Me.TrackingBindingSource.EndEdit()
        Me.TableAdapterManager.UpdateAll(Me.InventoryDataSet)
        MsgBox("Record Update")
End Sub

Saat dijalankan, saya mendapat kesalahan

System.InvalidOperationException: 'Update requires a valid UpdateCommand when passed DataRow collection with modified rows.'

Tidak yakin apakah saya melewatkan sesuatu untuk catatan pembaruan. Terima kasih


person q phan    schedule 19.08.2020    source sumber


Jawaban (1)


Saat Anda membuat DataSet yang diketik dari database, wizard menghasilkan DataTable dan adaptor tabel untuk setiap tabel database. Skema DataTable didasarkan pada skema tabel, seperti halnya SQL dalam perintah adaptor tabel.

SelectCommand berisi pernyataan SELECT yang akan mengambil semua kolom dari semua baris dan dieksekusi saat Anda memanggil Fill. InsertCommand, UpdateCommand dan DeleteCommand masing-masing berisi pernyataan INSERT, UPDATE dan DELETE dan dieksekusi sesuai kebutuhan saat Anda memanggil Update.

SelectCommand dan InsertCommand selalu dapat dibuat karena yang perlu diketahui hanyalah nama dan tipe data setiap kolom. Pernyataan UPDATE dan DELETE harus dapat mengidentifikasi catatan spesifik yang akan diperbarui atau dihapus dan mereka melakukannya dengan menentukan nilai kunci utama dalam klausa WHERE. Jika tabel database Anda tidak memiliki kunci utama maka SQL tersebut tidak dapat dibuat dan adaptor tabel Anda tidak akan memiliki UpdateCommand atau DeleteCommand.

Yang perlu Anda lakukan adalah memastikan bahwa semua tabel database Anda memiliki kunci utama. Memang sah memiliki meja tanpa PK tetapi sangat jarang. Setelah tabel Anda memiliki PK, Anda dapat menjalankan kembali wizard Sumber Data untuk memperbarui DataSet yang Anda ketik. Ada tombol pada toolbar di jendela Sumber Data untuk melakukan itu.

person jmcilhinney    schedule 20.08.2020
comment
Terima kasih. Perlu diketahui tentang Kunci Utama. - person q phan; 20.08.2020