0
我目前遇到将数据从Visual Basic导出到我的Ms Access文件的问题。 “当执行我的表单时,我收到以下错误:”更新需要一个有效的UpdateCommand,当它传递给修改过的行的DataRow集合时,它无法将数据导出到Ms Access中女士Access数据库不会输入来自Visual Basic的数据
这个表单的目的是当用户写入在他们的新用户名和密码,它,然后出口到MS Access数据库并保存。我有另一种形式的正确地从数据库中导入数据。
Public Class LoginTestV2
Private Sub LoginTestV2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'DataDataSet.TblUserAccount' table. You can move, or remove it, as needed.
Me.TblUserAccountTableAdapter.Fill(Me.DataDataSet.TblUserAccount)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles btnCreateAccount.Click
Me.TblUserAccountTableAdapter.Fill(Me.DataDataSet.TblUserAccount)
On Error GoTo SaveErr
TblUserAccountBindingSource.EndEdit()
TblUserAccountTableAdapter.Update(DataDataSet.TblUserAccount)
MsgBox("You have created your account! You're on your way to start Recycling!")
SaveErr:
Exit Sub
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btnClose.Click
Me.Close()
End Sub
End Class
此错误消息通常是由无法o f TableAdapter在设计时建立一个Update命令。反过来,这通常是因为您没有定义主键,即它不能生成指定要更新的唯一行的'Where'子句。 – peterG
Peter会怎样解决这个问题?如在中,我需要什么特别调整我的代码。 – Robert
这不是你的代码本身的问题。您需要查看数据集设计器中db和/或tableadapter中的表格设计。当您右键单击tableadapter并选择属性时,UPDATE命令应该是可见的。它由设计师自动构建,如果可以的话。如果不行,通常是因为它不能构造一个WHERE子句来指定一个唯一的行来更新,也就是说因为没有PK – peterG