2016-12-05 98 views
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 
+0

此错误消息通常是由无法o f TableAdapter在设计时建立一个Update命令。反过来,这通常是因为您没有定义主键,即它不能生成指定要更新的唯一行的'Where'子句。 – peterG

+0

Peter会怎样解决这个问题?如在中,我需要什么特别调整我的代码。 – Robert

+0

这不是你的代码本身的问题。您需要查看数据集设计器中db和/或tableadapter中的表格设计。当您右键单击tableadapter并选择属性时,UP​​DATE命令应该是可见的。它由设计师自动构建,如果可以的话。如果不行,通常是因为它不能构造一个WHERE子句来指定一个唯一的行来更新,也就是说因为没有PK – peterG

回答

0

更改您的访问数据库的安全设置。右击访问数据库,然后检查允许所有操作

相关问题