VB中的修改密码功能实时错误(BOF或EOF中有一个是真...)

来源:百度知道 编辑:UC知道 时间:2024/05/21 11:50:23
急!!!请各位大侠帮忙看看,以下是该功能的代码:

Private Sub cmdOK_Click()
Dim conn As New ADODB.Connection
Dim mrc As New ADODB.Recordset
Dim txtSQL, MsgText As String

If Trim(Text1.Text) <> Trim(Text2.Text) Then
MsgBox "密码不一致!", vbOKOnly + vbExclamation, "警告"
Text1.SetFocus
Text1.Text = ""
Text2.Text = ""
Exit Sub
Else

txtSQL = "select * from user_info1 where user_ID='" & username & "'"

Set mrc = ExecuteSQL(txtSQL, MsgText)
mrc.Fields(1) = Text1.Text ——————-这是报错时指出的错误所在
mrc.Update
mrc.Close
MsgBox "密码修改成功", vbOKOnly + vbExclamation, "修改密码"
Unload Me
End If
End Sub

Private Sub cmdCancel_Click()
Unload Me
End Sub
错误提示是:"BOF或EOF有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前记录” .我用的数据库是SQL.
请大侠帮我修改一下代码。

简单,执行完查询语句Set mrc = ExecuteSQL(txtSQL, MsgText) 以后.你得判断有不有符合条件的记录,如果有,才执行下面赋值的动作,如果没有,就不执行这个动作,否则会出错.

顶端最前,底端最后,到底端最后的时候你还在写入操作就会出错,那个时候就是你说的有一个为真,底端最后为真时就会这样,那儿是没有数据可修改的!
你让程序在底端最后的前一个停下修改操作就不会出这个事了!试试吧!我很久没用了,还是10年前用过fox的!