在做学生信息管理系统之前,我先问了自己一些问题:
我现在可以开始做了吗?要做学生信息管理系统之前我需要做哪些准备?做学生信息系统有什么作用?在以后的学习中起着什么样的作用?在做的过程中我需要如何做?
接下来是来回答这些问题:
现在我可以做学生信息管理系统了,原因如下:1.数据库视频认真的看过了,也做笔记了,但是没有很好的总结视频,缺少一个总体性的总结;2.五个实例认真的敲过了,也总结了,其中有很多的不懂的问题,也向师傅询问过了,后期还打算将这五个例子合敲成一个例子。
在做学生信息管理系统之前,我需要做哪些准备?1.我需要对数据库有个初步的了解。2.需要对学生信息系统有个大概的了解,知道这个系统是干什么的,生活中的哪些事儿是和这个系统相关的。
做学生信息系统有什么作用?1.学生信息管理系统是我们要做的第一个系统,主要是为了建立我们和代码之间的亲和力,增加代码量,在通过实践和数据库有亲密的接触。2.学生信息系统是我们以后学习的一个过渡,是一个渐渐独立的过程。
在做的过程中需要如何做?1.在做系统的过程中,千万不可以一行代码一行代码的敲,因为这样不容易理解,而需要一个窗体一个窗体的进行。需要先去理解它的语句,逻辑关系等。2.虽然做这个系统,我们不需要自己建立数据库,但是以后的系统我们都需要自己的建立数据库,因此为了顺利的过渡,我觉得这个系统我也应该自己试着建立一些简单的数据库,表等。3.需要总结。用专业的语言解释代码有时候很难懂,也不好记忆。因此在学习的过程中,需要自己结合生活总结,把它和生活中常见的事儿联系起来,这样就很容易理解了。
学生信息管理系统正式ing:
分析:
首先需要进行界面的设计:界面设计看似比较简单,似乎可以采用粘贴复制的方式,但我的建立是自己一个一个的动手去添加,去设计,只有经历这个过程你才会发现,其实你的VB学的很不好。但是会了呢,就是一个熟能生巧的活啦。
然后是窗体的考虑。这个系统中有很多的窗体,综合考虑了一下,我决定将Frmlogin、Frmmain和模块同时进行。因为这几个窗体联系的比较紧密。其中模块这部分又是比较难,比较重要的部分,又需要重点进行。其余的窗体打算一个一个的进行,他们的功能相对不较独立,也比较相似,难度不大。
实践:
模块:这部分差不多进行了两天的时间。代码比较难理解,以下是它的部分代码。
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Dim sTokens() As String On Error GoTo ExecuteSQL_Error sTokens = Split(SQL, " ") 'sTokens()从零开始的一维数组,Split()分割函数 Set cnn = New ADODB.Connection cnn.Open ConnectString If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) > 0 Then '非Select语句 cnn.Execute SQL '直接执行SQL语句 MsgString = sTokens(0) & " query successful" Else 'select语句 Set rst = New ADODB.Recordset rst.Open Trim$(SQL), cnn, adOpenStatic, adLockOptimistic '得到临时表,游标指向第一条记录 Set ExecuteSQL = rst MsgString = "查询到" & rst.RecordCount & " 条记录 " End If ExecuteSQL_Exit: Set rst = Nothing Set cnn = Nothing Exit Function ExecuteSQL_Error: MsgString = "查询错误: " & _ Err.Description Resume ExecuteSQL_Exit End Function
其中运用到三个函数:Split()、Instr()、Ucase(),这三个函数的使用可以查询函数手册。上面有比较全面的讲解。单个的函数理解了,接下来就是要理解IF语句块中的东西了,这个最好是进行整体的理解:
即如果在
"INSERT,DELETE,UPDATE"
中找到了
UCase$(sTokens(0)
就执行SQL语句(即非select:INSERT,DELETE,UPDATE),如果找不到的话就执行下面的Select语句,并返回结果。
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, adOpenStatic, adLockOptimistic
Set ExecuteSQL = rst
MsgString = "查询到" & rst.RecordCount & " 条记录
模块中还有一行代码是比较重要,但是看上去又比较简单,实际上又需要多加注意的代码将在下一篇博客中写出,并进行分析。
千里之行始于足下,这才是我做学生信息管理系统的刚刚开始,后面需要做的工作还有很多很多。