Vb.net 更新记录失败
我更新记录有困难。我不知道是什么问题。单击“更新”后,似乎没有出现错误。这是我的密码Vb.net 更新记录失败,vb.net,Vb.net,我更新记录有困难。我不知道是什么问题。单击“更新”后,似乎没有出现错误。这是我的密码 conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Charles\Documents\Database1.accdb" Dim cmd As String cmd = "UPDATE Employee SET EmployeeName = @eName, SSS = @SSS,
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Charles\Documents\Database1.accdb"
Dim cmd As String
cmd = "UPDATE Employee SET EmployeeName = @eName, SSS = @SSS, TIN = @TIN, ED = @ED, Salary = @Salary WHERE EmployeeName = @eName"
Dim cmdUpdate As New OleDbCommand(cmd, conn)
enableTxtBox()
If btnEdit.Text = "Edit" Then
btnEdit.Text = "Update"
Else
btnEdit.Text = "Edit"
Try
conn.Open()
cmdUpdate.Parameters.AddWithValue("@eName", txtName.Text)
cmdUpdate.Parameters.AddWithValue("@SSS", txtSSS.Text)
cmdUpdate.Parameters.AddWithValue("@TIN", txtTIN.Text)
cmdUpdate.Parameters.AddWithValue("@ED", dtpED)
cmdUpdate.Parameters.AddWithValue("@Salary", txtSalary.Text)
cmdUpdate.ExecuteNonQuery()
fillListView()
clearAll()
disableTxtBox()
Catch ex As Exception
MsgBox(ex.Message)
End Try
conn.Close()
End If
假设dtpED
是DateTimePicker
控件,您可能希望将该参数设置为dtpED.Value
(即控件中选择的日期),而不是dtpED
控件本身:
cmdUpdate.Parameters.AddWithValue("@ED", dtpED.Value)
'^^^^^^'
顺便说一下,我在这里假设实际到达并执行了
cmdUpdate.ExecuteNonQuery()
语句。由于对btnEdit.Text
的有条件检查,您的答案中不清楚这一点。(如果该按钮标记为“编辑”,则必须运行代码两次才能获得命令执行代码,因为一旦进入Then
子句,则将始终跳过Else
子句,即使您更改btnEdit.Text
,这是If
条件的一部分。)您是说更新失败,但您声称任何地方都没有报告错误。那么你怎么知道它失败了呢?对不起,我上周末在度假,所以我没能回复。。。如你所见,我试图了解是否会发生任何错误。。“但是”编辑某个记录时,该记录似乎没有更新。。。但是没有显示错误,所以我真的不知道我遗漏了什么代码
cmdUpdate.Parameters.AddWithValue("@ED", dtpED.Value)
'^^^^^^'