VB求助:BOF或EOF有一个是“真”,或者当前的记录已被删除.....

2024-12-27 01:02:49
推荐回答(4个)
回答1:

你提到了2个错误,中断分别在哪句?

建议修改查询方式:
sql = "select * From Users where 用户名='" & Trim(Text1.Text) & "'"

While (Adodc1.Recordset.EOF = False)
...
wend
改成
if Adodc1.Recordset.recordcount>0 Then
MsgBox "已有这个用户", vbOKOnly + vbExclamation, ""
Text1.SetFocus
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Combo1.Text = ""
Exit Sub
End If

回答2:

首先尽可能把存在bug的代码加以完善,
其次对于可能出现的不确定的意外可在过程开头加上
on error rusume next
不至程序直接退出.
或如下:
sub mysub()
on error goto errtrap
'自己的代码
exit sub '如果没有错误运行至此退出过程
errtrap:
msgbox err.descript '获取错误信息
end sub

回答3:

Recordset设置为adOpenDynamic 就行了吧

回答4:

用中段调试一下,看出现的程序段在哪个语句。