On Error GOTO的好处
发布时间:2020-12-17 08:09:50 所属栏目:百科 来源:网络整理
导读:学生信息管理系统敲完了,但是最多的问题就是EOF和BOF的错误,总是出像如下错误: 要想知道出错的原因和解决办法首先要了解 BOF 和 EOF 。 BOF 指示当前记录位置位于 Recordset 对象的第一个记录之前。 EOF 对象的最后一个记录之后。 要十分注意:第一个记录
学生信息管理系统敲完了,但是最多的问题就是EOF和BOF的错误,总是出像如下错误:
要想知道出错的原因和解决办法首先要了解BOF和EOF。 BOF指示当前记录位置位于 Recordset对象的第一个记录之前。 EOF对象的最后一个记录之后。 要十分注意:第一个记录之前和最后一个纪录之后,说的不是第一个记录,也不是第二个记录。 例如:当前已经显示最后一条记录了,指针定位于记录集的最后一条记录,如果再执行一次(仅一次否则就出错)Recordset.movenext,此时,Recordset.BOF=True。BOF的原理也一样。 另外查询记录为空,即没有查到任何记录时Recordset.EOF=True且Recordset.BOF=True 似乎明白了为什么出错,但是怎么解决呢,今天上午听了米老师讲课,恍然大悟,自己尝试着解决了,那就是用到了Err对象,所以有了一个解决办法: 在定义变量的前面编写On Error GOTO 例如在修改班级信息窗体为例子: Private Sub Form_Load() On Error GoTo PROC_ERR Dim txtSQL As String Dim Msgtext As String txtClassno.Enabled = False comboGrade.Enabled = False txtDirector.Enabled = False txtclassroom.Enabled = False txtSQL = "select * from class_Info " Set mrc = ExecuteSQL(txtSQL,Msgtext) mrc.MoveFirst Call viewData myBookmark = mrc.Bookmark mcclean = True Exit Sub PROC_ERR: Print "错误" MsgBox "无记录!" End Sub
这样问题就很容易解决了! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |