您不知道的事——《学生信息管理系统》

你不知道的事——《学生信息管理系统》

学生信息管理系统,拖拖拉拉历时十二天,终于完工了,我人生中的第一个系统,虽然有源码的参照,但是,毕竟花费了很多的精力和时间才完成。

第一次做一个完整的系统,从需求分析开始,分析了整个系统的所有功能,主要分为5个部分:用户管理、学籍管理、班级管理、课程设置、成绩管理,每一部分又有相应的添加、修改、查询,看似功能单一,但在代码实践的过程中,也充分验证了“想和做是两码事”。

您不知道的事——《学生信息管理系统》


开始的时候自己有很多的想法,总想改改这,改改那,可是真改了,就发现这个系统,牵一发而动全身,于是有一部分想法便被搁浅了。

比如说登录界面,当同一个用户名错误登录三次以后,便无法登录系统,登录错误时,只提示密码错误,当时自己想的时候,想着在登录窗体加上登录次数提醒,当用户第一次错误登录时,提示用户“错误登录一次,还有两次机会”,依此类推……但等到真正去敲代码的时候,才发现,哪有那么简单呀,不是说麻烦,只是我现在接触的东西还太少,有种迫不及待想要去学习的感觉,想多学点,会得再多一点……

您不知道的事——《学生信息管理系统》


整个系统做下来,很多东西都是相通的,一个功能一个功能地敲下来,发现并没有花费多少时间,只要清楚地知道每一个功能所发挥的作用,代码实现起来也变得容易多了,说到底,就是一些添加记录、修改记录、查询记录,除了这些,还是这些。说道真正的代码,无非是几个函数,几条select语句,几个if语句……

Private Sub cmdOK_Click()
   Dim txtSQL As String
   Dim rst As ADODB.Recordset
   Dim MsgText As String
   
   If Trim(txtClassNo.Text = "") Then                        
      MsgBox "班号不能为空,请重新输入!", vbOKOnly + vbExclamation, "警告"
      txtClassNo.SetFocus
      Exit Sub
   End If
    
   If Trim(comboGrade.Text = "") Then                        
      MsgBox "年级不能为空,请重新选择!", vbOKOnly + vbExclamation, "警告"
      comboGrade.SetFocus
      Exit Sub
   End If
   
   If Trim(txtDirector.Text = "") Then      
      MsgBox "班主任不能为空,请重新输入!", vbOKOnly + vbExclamation, "警告"
      txtClassNo.SetFocus
      Exit Sub
   End If
   
   If Trim(txtClassroom.Text = "") Then                      
      MsgBox "教室不能为空,请重新输入!", vbOKOnly + vbExclamation, "警告"
      txtClassroom.SetFocus
      Exit Sub
   End If
   
   If Not IsNumeric(Trim(txtClassNo.Text)) Then                 
      MsgBox "班号必须为数字!", vbOKOnly + vbExclamation, "警告"
      txtClassNo.SetFocus
      Exit Sub
   End If

   
   txtSQL = "select * from class_info"
   Set rst = ExecuteSQL(txtSQL, MsgText)
   
   If Not (rst.BOF And rst.EOF) Then
      rst.MoveNext
   End If
   
   
   While (rst.EOF = False)                                      
     If Trim(rst.Fields(0)) = Trim(txtClassNo.Text) Then
        MsgBox "此记录已经存在!", vbOKOnly + vbExclamation, "警告"
        txtClassNo.Text = ""
        txtClassNo.SetFocus
     Else
        rst.MoveNext
     End If
   Wend
   
   rst.AddNew                
   rst.Fields(0) = Trim(txtClassNo.Text)
   rst.Fields(1) = Trim(comboGrade.Text)
   rst.Fields(2) = Trim(txtDirector.Text)
   rst.Fields(3) = Trim(txtClassroom.Text)
   rst.Update
   rst.Close
   Me.Hide
   MsgBox "添加班级信息成功!", vbOKOnly + vbExclamation, "添加成功"
End Sub

每一天,我都会记录一下自己做了多少,记录下每天的感受,每天要拿出时间来听英语,要处理CEO的各种事务,所以,做这个系统的时间少之又少,感觉每天都是挤时间来做,有的时候一天下来,发现自己一个窗体都没有写完,就利用晚上的时间再写一点,为了保证自己的休息时间,晚上回去的时候,我通常只拿着本,不拿电池,电脑没电了,就可以宣告这一天完美的结束了。


你知道吗?当我打包发布以后,去五楼打开了三台电脑,安装完,多用户同时登录,系统与数据库分离、异地访问……全部实现时的那种兴奋,是任何一种物质奖励都无法取代的。


              很多事情,只要我们去做,去努力,就一定会有回报。我相信“守得云开见日明”~~~


                                坚持着去做,没有什么不可能。





31楼Lover_Miao4分钟前
你应该用的vb.net和win7的系统开发, 数据库的话, 就不知道了, 呵呵, 不过, 你的if可以用if elseif (不知道对不对, 好像vb是if then elseif反正我的意思你应该能够看懂)去实现, 这样的话, 有一个不成功, 直接返回, 不用去执行下面的操作了, 可以, 小小的提升一下性能, 呵呵, 个人建议,
Re: linlin80230619刚刚
回复Lover_Miaon我还没有学到.net呢,现在只学了VB和SQL~不过谢谢您很认真的看我的博客,接受您的建议,以后会不断完善的~
30楼aboy1234小时前
比那个人写的好多了
Re: linlin802306193小时前
回复aboy123n哪个人呀,哈哈~
29楼timmygod6小时前
好可爱的MM~ 起步之初,每一步都是让人开心,让人雀跃的,替你高兴。nn但是从技术层面来说,这段代码还是有很多的不足之处,比如对条件判断的处理,对数据层面的处理,等等。欢迎加入群16750189,在分享中提高,共同进步!
Re: linlin802306194小时前
回复timmygodn谢谢您的理解与建议~
28楼zllaptx486910小时前
有种剽窃你题目的感觉~~~~呜呜呜,可是我真的没过你的这篇博客!!!大概是心有灵犀吧~~~~~嘻嘻嘻嘻
Re: linlin802306198小时前
回复zllaptx4869n看在你是个好孩子的分上,我就不追究版权问题了,哈哈~
27楼lidaasky10小时前
可以尝试优化一下检测方式
Re: linlin8023061910小时前
回复lidaaskyn好的,继续努力~
26楼skyxuyan昨天 23:27
请教下n打包发布 后 系统与数据库分离、异地访问 。。。。。。n这我有点不明白 你这个是C/S的n打包的时候不是一个单独的数据库吗n你用的是远程数据库吗 就是写 IP 的那种 是 SQLServer吗n安装的时候 还用作具体改动吗 n这个打包的时候要怎么实现啊 有点不懂 请教。。。。
Re: linlin8023061916小时前
回复skyxuyann把数据库设置为允许远程链接,并且启动相关的IP协议;在连接数据库时,代码Data Source=本机IP地址;这样就可以了~
Re: skyxuyan10小时前
回复linlin80230619nen恩 谢谢
25楼laner0515昨天 18:45
挺好的,要是代码有注释就更好了
Re: linlin80230619昨天 22:42
回复laner0515n代码里有,复制到编辑器里就成了乱码,然后我就给删了~以后注意,加上些注释~嘿嘿~谢谢兰儿~
24楼lishehe昨天 17:46
加油,快乐,充实
Re: linlin80230619昨天 18:17
回复lishehen一起加油!一起快乐着~
23楼wj8023昨天 17:28
加油,真的很棒!
Re: linlin80230619昨天 17:46
回复wj8023n一起加油!
22楼liujiahan629629昨天 17:10
真牛![e01]
Re: linlin80230619昨天 17:12
回复liujiahan629629n离牛还差得很远呢~
Re: liujiahan629629昨天 17:28
回复linlin80230619n那就是小牛啦 !哈哈!
21楼zhangyingjie09昨天 16:44
不错啊,加油
Re: linlin80230619昨天 16:47
回复zhangyingjie09n一起加油呀~
20楼xf_reason昨天 16:34
支持一下。我是做了这个系统的实际项目,做这个项目的体会是,业务看似简单,实际还比较复杂。我是想说一下这个项目的需求问题nn学籍管理里面还要包含,学籍异动,各类报表,转入转出,留级辍学,等等,统计比较复杂,更不好处理的是,历史数据的管理,学期升级(比如从一年级升级到二年级)nn班级管理 跟学籍管理放到一个大栏目有点不合适,班级管理包括新学期分班,单个或批量的分班nn教务管理 包含老师的一些信息,班级的智能排课是个难点,老师对应的是教哪几个班级,哪门课程。班级对应的是班级课表。nn考务管理 编排考场以及打印n成绩管理 难点是每次考试成绩的录入或者导入,还有成绩数据的校对问题,历史成绩的存储和查询优化问题nn综合素质评价 难点是在评价项目比较多,然后有合成计算nn。。两年前项目,凭记忆想的一些实际项目中还有印象的为难题。不过你是在练手,需求不用考虑这么多,
Re: linlin80230619昨天 16:35
回复xf_reasonn谢谢您的支持与指导~我只是小菜鸟,以后还需要向您这样的有经验的人多多学习~
19楼ww5552456614昨天 15:49
判断不能为空的这些不用写这么多吧。。。新手说错了别见怪
Re: linlin80230619昨天 16:33
回复ww5552456614n嗯,这样就是最笨的方法了,不过我的确是个小菜鸟,谢谢你这么认真看我的博客~
18楼Temanm昨天 11:55
vb呀!n不错。
Re: linlin80230619昨天 14:21
回复Temanmn谢谢~
17楼lsh6688昨天 11:00
进度正好 加进总结 进行机房收费系统
Re: linlin80230619昨天 11:17
回复lsh6688n好的,继续努力~谢谢师哥~
16楼a137151062昨天 09:56
引用名人名言:快乐来自自我的成功。。。刚哥
Re: linlin80230619昨天 10:07
回复a137151062n刚哥就是刚哥,连名人名言都用得这么好~
15楼shehun1昨天 08:04
从此,你站在了项目的角度上。
Re: linlin80230619昨天 08:24
回复shehun1n谢谢师哥~我会努力的,嘿嘿~~~
14楼wangyongxia921昨天 08:03
[e01],我无话可说,哈哈
Re: linlin80230619昨天 08:03
回复wangyongxia921n那俺又能说点啥呢~~~
13楼dandanzmc昨天 08:03
厉害,衷心的夸奖
12楼sumuu昨天 23:07
VB,坚持下来就好!
Re: linlin80230619昨天 00:13
回复sumuun谢谢~
11楼kingjue_w昨天 22:13
好东西,借来试一试!谢谢
Re: linlin80230619昨天 23:07
回复kingjue_wn不客气~互相学习~
10楼beibei1990a昨天 21:35
支持下 求分享源码
Re: linlin80230619昨天 21:35
回复beibei1990an谢谢您的支持!网上有很多关于这个系统的源码,上网下载一下就可以了~
9楼JUNE_916昨天 21:18
很棒哦,下面更要努力。。
Re: linlin80230619昨天 21:25
回复JUNE_916n好的,大家一起努力,向前冲~
8楼jiangqq781931404昨天 21:11
支持一下挺不错 虽然我没有学过VB 哎
Re: linlin80230619昨天 21:12
回复jiangqq781931404n谢谢您的支持~
7楼wangcongyi_zz昨天 20:24
貌似非空判断这样不好吧!!
Re: linlin80230619昨天 21:11
回复wangcongyi_zzn有好几种写法,不过我的这个写得确实不怎么样~谢谢您很认真地看我的博客~
6楼jiuqiyuliang昨天 19:05
进度挺快啊
Re: linlin80230619昨天 20:01
回复jiuqiyuliangn差不多吧,不快了~
5楼lfmilaoshi前天 18:36
快乐,来自自我的成功。。。。米老师
Re: linlin80230619前天 18:37
回复lfmilaoshin自我价值的实现,哈哈~
4楼ironxue前天 18:35
加油。
Re: linlin80230619前天 18:36
回复ironxuen一起加油!
3楼liutengteng130前天 15:15
支持,加油。
Re: linlin80230619前天 18:35
回复liutengteng130n一起加油~
2楼StubbornPotatoes前天 14:13
Re: linlin80230619前天 15:13
回复StubbornPotatoesn谢谢师哥~
1楼lzh1110前天 11:42
嗯,加油!坚持去做,就回胜利!
Re: linlin80230619前天 12:36
回复lzh1110n嗯嗯,坚持,你也要坚持下去~