系统敲完了,也调试完了,在完成系统的过程中遇到不少的问题,做一下总结。
1、With 未设置,实时错误‘91’
1)、数据库的ODBC配置出现错误,没有配置好,与数据库的连接没有连接好,就会出现这样的问题
2)、与代码中从数据库中调用数据的语句有关:
前面的空格不应该有
where 后面有条件,所以与引号间必须有空格
2、多步OLE DB操作产生错误。
出现这个问题时,调试的指针会指在写的代码的某一行,
这是因为每一个数据都有各自的数据类型,字段的大小都有限制,但你超出这个限制的时候,就会出现上述的情况!
3、实时错误“3021”
出现这个问题的时候,一般是你的数据库里面已经为空,当你继续执行Form_Load()事件或者在你删除数据时,把数据库中的数据已经全部删除之后,会出现这种情况!对于这种情况,我对Form_Load()和deleteCommand_Click()两个事件下的过程做了相应的改变
Private Sub From_Load()
txtsql="select * from class_info "
set mrc=ExecuteSQL(txtSQL,MsgText)
If mrc.EOF And mrc.EOF then '指针未在记录集之中,没有记录,说明数据库为空
MsgBox"数据库为空,请先添加班级信息!",vbOkonly + vbExclamation,"警告"
mrc.Close
Frame2.Enabled=False '使所有的控件按钮无法使用
Frame3.enabled=False
Else
mrc.MoveFirst
Call viewData
myBookmark=mrc.Bookmark
mcclean=True
End If
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
Private Sub deleteCommand_Click()
myBookmark = mrc.Bookmark
str2$ = MsgBox("是否删除当前记录?", vbOKCancel, "删除当前记录")
If str2$ = vbOK Then
mrc.MoveNext '删除后显示下一条记录
If mrc.EOF Then
mrc.MoveFirst
myBookmark = mrc.Bookmark
mrc.MoveLast
mrc.Delete
mrc.Bookmark = myBookmark
txtSQL = "select * from class_info " '重新从数据库中提取数据,相当于刷新
Set mrc = ExecuteSQL(txtSQL, MsgText) '得到student表,并显示出来
If mrc.EOF And mrc.BOF Then
MsgBox "数据库为空,请先添加班级信息!", vbOKCancel, "警告"
mrc.Close '关闭连接
Frame2.Enabled = False
Frame3.Enabled = False
txtClassno.Text = ""
comboGrade.Text = ""
txtDirector.Text = ""
txtClassroom.Text = ""
Else
Call viewData
End If
Else
myBookmark = mrc.Bookmark
mrc.MovePrevious
mrc.Delete
mrc.Bookmark = myBookmark
Call viewData
End If
Else
mrc.Bookmark = myBookmark
Call viewData
End If