我有一个登录表单,可以将已登录的用户保存到表中,并在退出应用程序时将其删除。问题是当在表适配器中运行update方法时,它不返回错误但不更新db表
以下代码:
Sub passwordValid()
Hide()
Try
Dim userIDAdd As String = DataGridView1.Rows(0).Cells(0).Value
Dim userRightsAdd As String = DataGridView1.Rows(0).Cells(4).Value
Dim CurrentDateTime As Date = Now
Dim AddRow As DataRow = LocalDB1DataSet.Tables("LoggedOn").NewRow
AddRow(0) = userIDAdd
AddRow(1) = userRightsAdd
AddRow(2) = CurrentDateTime
LocalDB1DataSet.Tables("LoggedOn").Rows.Add(AddRow)
Try
Me.Validate()
Me.LoggedOnBindingSource.EndEdit()
Me.LoggedOnTableAdapter.Update(Me.LocalDB1DataSet.LoggedOn)
MsgBox("Logged In as: " & LoggedInUser)
Catch ex As Exception
MsgBox(ex.Message)
End Try
Catch ex As Exception
MsgBox(ex.Message)
End Try
Main.Show()
End Sub
非常感谢任何帮助或解释。
答案 0 :(得分:0)
我根据@jmcilhinney所说的做了一些研究:
更新返回1然后保存了一条记录。如果您已经按照我提供的链接进行操作,那么您现在应该知道您正在查找错误的数据库,并且默认情况下,每次重建项目时都会覆盖要查找的正确数据库。
事实证明这不是完全的情况,但它让我知道了这个原因。每次编译时,它都会替换旧数据库,但该数据库保持空白,但如果应用程序通过VS运行,则会创建数据库的备份数据库,当应用程序在VS中停止时,它会使用备份恢复已发布的数据库D B。这是我自己的结论。