学生信息管理系统代码学习

前言:

      学生信息管理项目也进行了很长一段时间了,期间也是磕磕绊绊的照着书上的实例进行学习,然后在再将书上的代码复制到电脑上进行实现,也进行了一些优化和升级使得程序更加的完美,当然因为作者能力有限也只进行了一部分的功能优化,希望大家在评论去进行批评指正。


 修改学籍信息窗体:

                                               学生信息管理系统代码学习


  在修改学习信息这个功能模块中,在查看学籍消息这里,第一条、上一条、下一条、最后一条,这几个功能的实现关键在于  移动指针的命令

 

        MoveFirst   指针指向表中的第一条记录

 

        MoveLast    指针指向表中的最后一条记录

 

        MoveNext   指向当前指针的下一条记录

 

        MovePrevious 指向当前指针的上一条记录


 可能直接说大家会不太明白以上几个命令到底在数据库中是怎么运行的,下面我在贴上一张图进行简单解释一下。


                                                               学生信息管理系统代码学习 


假设当前指针指向的是记录C,那么

                                    MoveFirst  则指针指向A

                                    MoveLast   则指针指向E

                                    MovePrevious 则指针指向B

                                    MoveNext   则指针指向D


功能添加:

 1.    在文件尾单击下一条 自动跳转到第一条记录,在文件头单击上一条自动跳转到最后一条记录

使表在逻辑上成为一个环。


 Private Sub cmdNext_Click()         Private Sub cmdPrevious_Click()

  '数据集向后移动                  '数据集向前移动

  mrc.MoveNext                     mrc.MovePrevious

  '判断是否到末尾                  '判断是否到起始位置

    if mrc.EOF Then                 If Mrc.BOF then

      mrc.MoveFirst                 mrc.MoveLast

    End if                       End If

  Call viewData                    Call viewData

  End Sub                     End Sub



2. 更新按钮中添加 判断出生日期和入学日期是否符合逻辑的判断


 If Val(left(txtRudate,4))<Val(left(txtBorndate,4)) Then

     MsgBox"入学年份和出生年份逻辑错误,请重新输入",vbOKOnly+vbExclamation,"警告"

     txtBorndate.SetFocus

     Mrc.Bookmark=myBookmark

     Call viewData

     Exit Sub

 End If



Tip:

  通过出生日期和入学日期的的年份来判断是否符合我们的逻辑,在这里我只进行了年份判断没有进行详细的月份和天数的判断,如果有需要大家可以自己尝试一下.

      其中运用了字符串截取函数 Left 来获得年份,通过Val 数值转换函数来进行数值的转换,同理,月份和天数也可以通过此方法进行获取。


未完待续。。