错误一:进不去系统
最近机房刚传完系统。问题却来了,学生信息管理系统数据库配置正确,用户名和密码都正确。但是就是点完确定之后就没反应了。进不去系统,也不报错。
解决方案:点击确定按钮,将确定按钮的default属性改为true。然后运行程序,输完用户名和密码后。点Enter键即可进入系统。点击确定按钮也可进入。
错误二:实时错误‘3021’
出现此错误是因为:
1.查找的数据库记录为空..可以用 rs.RecordCount 来判断数据是否等于0
2.查找到数据后,用 Del 命令删除记录后,再引用 Fields 后会出现错误.
3.已经用MoveFirst 或用 MovePrevious 命令移动至数据库开始后再用 MovePrevious 命令.
4.已经用MoveLast 或用 MoveNext 命令移动至数据库开始后再用 MoveNext 命令.
解决方案:添加if语句。
原代码
Private Sub Form_Load()
Dim txtSQL As String
Dim MsgText As String
txtSQL = "select * from student_Info "
Set mrc = ExecuteSQL(txtSQL, MsgText)
mrc.MoveFirst
Call viewData
myBookmark = mrc.Bookmark '对当前记录进行标记
mcclean = True '可编辑状态
end sub
修改之后
Private Sub Form_Load()
Dim txtSQL As String
Dim MsgText As String
txtSQL = "select * from student_Info "
Set mrc = ExecuteSQL(txtSQL, MsgText) '得到student表,并显示出来
'select得到的临时表,游标指向尾记录,在Access中指向第一条
If mrc.EOF And mrc.BOF Then '一条IF语句充当错误处理,当无记录时,mrc.eof=true
'和mrc.bof=true两个条件同时满足!
MsgBox "无记录!"
frmModifysinfo.Show '直接进行下一步,显示窗体
Else
mrc.MoveFirst
Call viewData
myBookmark = mrc.Bookmark '对当前记录进行标记
mcclean = True '可编辑状态
End If
End Sub
错误三:用户名输入英文单引号时,系统报91错误。
从ASCII码中找打要限制的字符,比如限制在textbox中不能输入 “ ’ ” 就可以限制39,就ok了。
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 39 Then
Msgbox " “'是非法字符,请输入合法字符!”",VBokonly ,"警告"
end if
end sub
错误四:在无记录的前提下点击修改。会出现“3021错误”
解决方案:
Private Submodifysinfo_Menu_Click()
txtSQL = "select * from student_Info "
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.RecordCount = 0 Then
MsgBox "课程信息不存在,请添加!", vbOKOnly + vbExclamation, "警告"
mrc.Close
Set mrc = Nothing
frmAddsinfo.Show
Exit Sub
Else
frmModifysinfo.Show
End If
End Sub 点击修改什么信息窗体:倾斜粗体的代码就应相应的跟着改变。