1、健身跑学分管理系统沈阳航空航天大学 课程设计 学 号 2009040301005班 级 94030101 姓 名 王望 指导教师 刘学平 2011年 3月 18 日沈阳航空航天大学课程设计任务书学院:航宇 专业:飞行器制造 班级:94030101学号:2009040301005 题目:健身跑学分管理系统一、课程设计时间2011年3月7日11日(第1周),共计1周。二、课程设计内容用VB+Access组合,编写“健身跑学分管理”软件。学生信息存储到Access数据库的一个表中,学生信息至少包括:学号、姓名、签到次数、学分等,后两项的初始值为0。学分计算方法:在本学期内累计次数达到10次,可得到0
2、.5学分,否则没有学分,新学期开始累计次数从0开始累计,每签到一次,累计签到次数加1。程序能实现对学生数据进行维护、跑步签到、按学号或学分查询等功能。用户界面中的菜单至少应包括“编辑学生数据”、“跑步签到”、“查询”、“退出”4项。三、课程设计要求程序质量: 贯彻事件驱动的程序设计思想。 用户界面友好,功能明确,操作方便;可以增加其它功能或修饰。 代码应适当缩进,并给出必要的注释,以增强程序的可读性。课程设计说明书: 课设结束后,上交课程设计说明书和源程序。课程设计说明书的内容参见提供的模板。四、指导教师和学生签字指导教师:_ 学生签名:_五、成绩六、教师评语目 录一、需求分析 4二、设计分析
3、 4三、关键技术 6四、总结 12五、完整的源程序 13六、参考文献 15一、需求分析模拟健身跑学分管理系统,主要包括“编辑学生数据” “跑步签到”“查询”几项功能。由于签到次数和学分有一定的联系,所以系统能够按照学号或学分查询学生的健身跑签到情况。要求:在Access中创建学生基本状况表,主要包括跑步签到”和“实际学分”2方面信息。此表的结构应如下定义:学号,姓名,签到次数,学分。能够随时显示学生签到次数和学分情况。能够随时编辑学生的信息,包括添加,删除和修改学生信息。能够随时的按学号或学分查询学生的健身跑签到情况。二、设计分析(1) 基本原理:用VB+Access组合,编写“健身跑学分管理
4、”软件。学生信息存储到Access数据库的一个表中,建立程序设计与数据库的连接,用SQL语句在数据库中查找,添加和更改数据。(2) 总体设计:图1 总体设计(3)详细设计:图1 详细设计(4)数据库设计:数据库设计是总体设计阶段非常重要的环节,数据库结构的变化会造成编码的改动,所以必须认真设计数据库结构后再进行编码,从而避免无谓的重复工作。本系统的数据库包括1个表,即学生基本状况表。1)学生基本状况表(rsb.dbf)学生基本状况表(rsb.dbf)用于记录学号、姓名、签到次数、学分等信息,其逻辑结构如表1所示。表1 学生基本状况表字段名称数据类型字段大小小数位数必填字段学号数字长整型自动否姓
5、名文本50否签到次数数字长整型自动否学分数字单精度自动否三、关键技术(1)建立与数据库的连接代码如下。Private Sub Form_Load() Dim mpath$, mlink$ mpath = App.Path 获取程序所在的路径If Right(mpath, 1) Then mpath = mpath + 判断是否为子目录 以下两行代码可合成一句,mlink存放ConnectionString属性的设置值mlink = Provider=Microsoft.Jet.OLEDB.4.0; 指定提供者mlink = mlink + Data Source= + mpath + stud
6、ent.mdb 在数据库文件名前插入路径Adodc1.ConnectionString = mlink 设置连接属性Adodc1.CommandType = adCmdUnknown 指定记录集命令类型(可在设计时指定) Adodc1.RecordSource = Select * from 基本状况 Adodc1.Refresh Set DataGrid1.DataSource = Adodc1End Sub(2) 查询经营情况是SQL语句在数据库中查找学生健身跑基本状况Recordset.Find搜索条件,SelectFromWhere程序段如下:按学号查询:Private Sub Com
7、mand2_Click() Dim n As String n = InputBox(请输入学号, 查找窗) Adodc1.Recordset.Find 学号 = & n & , , , 1 If Adodc1.Recordset.EOF Then MsgBox 无此学号!, , 提示End Sub 按学分查询:Private Sub Command5_Click() Dim n! n = InputBox(请输入学分, 查找窗) Adodc1.RecordSource = select*from 基本状况 where 学分= & n & Adodc1.RefreshEnd Sub 窗体-查询
8、:图2 窗体-按学号查询 图3 窗体-按学分查询(3)跑步签到会更改数据库中签到次数和学分信息。程序段如下:Private Sub Command4_Click()If Option1.Value = True Then Text3 = Text3 + 1 Adodc1.Recordset.Fields(签到次数) = Text3 End If If Text3.Text = 10 Then Adodc1.Recordset.Fields(学分) = 0.5 Else Adodc1.Recordset.Fields(学分) = 0End IfEnd Sub窗体-跑步签到图4 窗体-跑步签到(4
9、)编辑学生信息是向数据库中添加,删除和修改学生的基本状况信息。程序段如下:Private Sub Command1_Click(index As Integer) Dim ask As Integer Select Case index Case 0 Adodc1.Recordset.AddNew 添加 Case 1 ask = MsgBox(删除否?, vbYesNo) If ask = 6 Then Adodc1.Recordset.Delete 删除 Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF Then Adodc1.Records
10、et.MoveLast End If Case 2 Adodc1.Recordset.Update 修改 End SelectEnd Sub窗体-编辑学生信息:图5 窗体-添加学生信息四、总结 这次课设我的题目是健身跑学分管理系统,当然理论知识是用来指导实践的,亲身体验才能领悟编写程序的妙用,在课设中我被分到了健身跑学分管理系统,同时我们在平时生活中这个我们接触比较多,对于它的流程还是比较清晰的,但是我还是花了很长的时间去完成它,通过这次课设让我了解了用VB+Access组合,编写“健身跑学分管理”软件。将学生信息存储到Access数据库的一个表中,VB与数据库之间的联系,可以应用ADO技术使
11、VB与数据库进行联系,还可以应用SQL语言查询和更改数据库中的信息,并能向其中添加新的信息。让我们的理论知识在实践中得以巩固。 在课设过程中,我遇到了重重困难,例如:VB与数据库的连接技术,通过老师的指点和自己查阅资料,我克服了困难,顺利的完成了任务。 同时我也了解了VB的出现是一场技术革命,它在生活中各个方面都能发挥巨大的作用,所以,学好VB是社会发展的需要。五、完整的源程序Option ExplicitPrivate Sub Command1_Click(index As Integer) Dim ask As Integer Select Case index Case 0 Adodc1
12、.Recordset.AddNew 添加 Case 1 ask = MsgBox(删除否?, vbYesNo) If ask = 6 Then Adodc1.Recordset.Delete 删除 Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast End If Case 2 Adodc1.Recordset.Update 修改 End SelectEnd SubPrivate Sub Command2_Click() Dim n As String n = InputBox(请输入学
13、号, 查找窗) Adodc1.Recordset.Find 学号 = & n & , , , 1 If Adodc1.Recordset.EOF Then MsgBox 无此学号!, , 提示 End SubPrivate Sub Command3_Click() EndEnd Sub Private Sub Command4_Click()If Option1.Value = True Then Text3 = Text3 + 1 Adodc1.Recordset.Fields(签到次数) = Text3 End If If Text3.Text = 10 Then Adodc1.Recor
14、dset.Fields(学分) = 0.5 Else Adodc1.Recordset.Fields(学分) = 0 End IfEnd SubPrivate Sub Command5_Click() Dim n! n = InputBox(请输入学分, 查找窗) Adodc1.RecordSource = select*from 基本状况 where 学分= & n & Adodc1.RefreshEnd SubPrivate Sub Form_Load() Dim mpath$, mlink$ mpath = App.Path 获取程序所在的路径 If Right(mpath, 1) Th
15、en mpath = mpath + 判断是否为子目录 以下两行代码可合成一句,mlink存放ConnectionString属性的设置值 mlink = Provider=Microsoft.Jet.OLEDB.4.0; 指定提供者 mlink = mlink + Data Source= + mpath + student.mdb 在数据库文件名前插入路径 Adodc1.ConnectionString = mlink 设置连接属性 Adodc1.CommandType = adCmdUnknown 指定记录集命令类型(可在设计时指定) Adodc1.RecordSource = Select * from 基本状况 Adodc1.Refresh Set DataGrid1.DataSource = Adodc1End Sub文献1 龚沛曾 杨志强 陆慰民Visual Basic程序设计教程北京:高等教育出版社,20012郑海春 谢维成visual basic6.0精彩编程150例西安:西北工业大学出版社,20043 夏邦贵 刘凡馨Visual basic数据库开发经典实例精解北京:北京机械工业出版社,2005
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1