学生信息管理系统总结(一)

【前言】


学生信息管理系统——自己接触到的第一个系统,我们要学着站在巨人的肩膀上学习,所以这个系统基本是照着源码敲下来的,但是源码中也有错误,我很喜欢这样,源码里的核心知识以及错误正式我们要学习的地方,所以感觉收获还是挺多的,很喜欢提高班的这种教育,尊重科学,每学习一种新的东西,都是在原来的基础上稍微加点难度,让我们蹦一下就可以够得到,同时伴随着收获的喜悦,原来学习是一件这么有意思的事情


下面就对学生信息系统中经常遇到的问题总结一下。


【问题1】多步OLE DB操作产生错误

敲学生信息系统的时候,当我们修改更新信息的过程中经常会遇到这样的错误:多步OLE DB 操作产生错误。
 
产生错误的代码是:
mrc.delete 即删除当前记录这条代码


 原因:
当我们已经删除了数据库中的记录,再做删除时就会提示这样的错误
我们可以看到上图中的源码:
当点击更新按钮时,先判断各文本框不能为空,判断完毕之后,就立马删除了当前记录,然后才是判断是否重复,但是当我们输入了重复的信息的时候,再重新输入的时候,然后再点击更新。这时同样先执行 mrc.delete.可是当前记录在上一次已经被删除过了,这次再删除的时候,就会提示多步OLE DB操作产生错误的提示。我们只有确保信息不重复的时候才可以删除当前显示的记录,否则不可删除。

解决办法:
是当我们修改数据信息时,确保更改后的信息不重复的时候才可以删除被修改的数据,所以mrc.delete代码应放在信息不重复之后,如下:
这样的错误在敲学生的过程中会经常遇到,理清楚程序运行的思路,是很必要的。

 

【问题2】实时错误3021


当我们在删除信息的过程中,经常会遇到这种提示:实时错误 '3021',BOF 或 EOF中有一个是“真”,或者当前记录已被删除,所需的操作需求一个当前的记录。


原因:
数据库中没有记录,所以当我们再做删除的时候,就会有这样的提示。

解决办法:
我们可以设置提示,当删除完最后一条记录的时候,提示"最后一条记录已被删除,"然后使当前界面处于不可编辑状态。
删除过程中具体的流程就是这样子的,我们可以根据这样的流程来填写自己的代码。


这是我删除学籍信息时添加的提示代码,可做参考:
Private Sub deleteCommand_Click()
   
    myBookmark = mrc.Bookmark
    
    str2$ = MsgBox("是否删除当前记录?", vbOKOnly + vbExclamation, "提示")
    If str2$ = vbOK Then
           mrc.MoveNext  '删除后显示下一条记录
           If mrc.EOF Then   '分两种情况,一种是最后一条记录,(有且仅有一条记录),一种是不只有一条记录
                  mrc.MovePrevious
                  mrc.MovePrevious
                  If mrc.BOF Then   '有且仅有一条记录
                       mrc.MoveNext
                       mrc.Delete
                       MsgBox "最后一条记录已经删除!", vbOKOnly + vbExclamation, "提示"
                  End if
           End  if
   End if
End Sub    
       
 

【错误3】实时错误91,对象变量或with块变量未设置

这是错误3博客的链接:http://blog.csdn.net/lnazj/article/details/51377574

希望对大家有帮助〜〜〜

 总结:

在学习的过程中,总结很重要,等到我们再遇到同样的问题是,就不会感觉不知所措,很喜欢学生信息管理系统,让我们在错误中成长,知识不再是孤立的知识,已经融入了我们的实践思考,下一个是机房系统,数据关系更复杂,挑战来袭,兴奋ing!



你可能感兴趣的:(数据库,其他)