指导教师:霍戌文、郭奕亿
《应用软件实践》课程设计
(2012/2013-2分散)
班级:******* 学号:********** 姓名:***
浙江理工大学科技与艺术学院
2013年3月
基于VB和SQL的数据库编程技术
《应用软件实践》课程设计报告
目 录
1.题目..........................................................................................3 2.目的与要求..............................................................................3 3.需求分析.........................................3 4.数据建模与分析....................................4 5.数据库建立..............................................................................5 6.数据库应用开发与运行..........................................................8 6.1 登录程序代码、界面图、详细功能说明............8
6.2 选择界面程序代码、界面图、详细功能说明........10 6.3 缴费信息界面程序代码、界面图、详细功能说明.....11 6.4缴费信息修改界面程序代码、界面图、详细功能说明...17
6.5学分信息界面程序代码、界面图、详细功能说明.......19 6.6学分信息修改界面程序代码、界面图、详细功能说明....20 6.7基本信息界面程序代码、界面图、详细功能说明........21 6.8基本信息修改界面程序代码、界面图、详细功能说明....22
7.结果分析、结论与体会...................................23 8.参考文献及资料................................................24
2
基于VB和SQL的数据库编程技术 一、题目: 学生基本信息管理系统
二、目的和要求:
1.设计目的:
1.让学生按照软件工程的规范掌握一般应用软件开发的基本过程、基本技术,为以后的毕业设计奠定基础。
2.掌握关系型数据库管理系统的编程技术,并能完成一般小系统的程序设计、调试运行等工作。
3.培养把所学知识运用到具体对象,理解面向对象编程理论,并能求出解决方案的能力。
2.任务要求
1、学生基本信息设置:包括专业、班级、姓名、学号等;
2、学生学分信息及缴费信息录入:包括已获学分、还需选修学分,缴费信息等; 3、学生基本信息和学分、缴费信息的查询及增删改; 4、学分及缴费信息的统计(此项可选)。
三、需求分析:
SQL是一种结构化数据库查询语言,其发音为“sequel”或“S-Q-L”。尽管MICROSOFT以其特有的方式加入了所有权声明,但它在大多数据库应用中近乎成为一种标准。简言之,它是一种使用你选择的标准从数据库记录中选择某些记录的方法。
就象SQL的名字一样,我们可以通过容易理解的查询语言,来和数据库打交道,从数据库中得到我们想要的数据。对于SQL语言,有两个组成部分:
DML(data manipulation language):它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。
(1)登录管理:实现系统加密功能
(2) 学籍管理:主要功能用来对学生的学籍进行管理和记录。
(3) 收费管理:对学生收费进行管理。包括总费用,已缴费用,还需退款,缴费统计等修改。
(4)修改管理:管路员对学生的基本信息,学分信息,缴费信息的修改,删除,添加等功能。
3
基于VB和SQL的数据库编程技术
(5)学分管理:对学生的学分进行管理,包括学分标准,学分统计,已修学分等学分信息修改。
(6)查询管理:学生对自己基本信息,学分信息,缴费信息的查询。
四:数据分析与建模 学分信息表
登录表 缴费信息表 学生基本信息表 图 4.1数据库关系表 图 4.1是以登录表信息为约束条件,又以各表的学号为主键形成的约束关系。 登录信息管理 学 生信 息添 加 学生基本信息管理系统 基本信息管理 学分信息管理 学分信息添加 学分信息修改 学分信息删除 学分信息统计 缴费信息添加 缴费信息管理 缴费信息修改 学分信息统计 学分信息统计 学生信息修改 学生信息添加 学生信息删除 图 4.2系统功能模块
图 4.2是学生基本信息管理系统的几大功能模块以及其子模块
五、数据库建立:
4
基于VB和SQL的数据库编程技术
图5.1
图5.1 基本信息表包含了学生的学号,姓名等的基本结构。
图5.2
图5.2 学分信息表包含了学生的总学分,已修学分等的基本结构。
图5.3
图5.3 登录信息表包含了学生的学号,密码等的基本结构。
5
基于VB和SQL的数据库编程技术
图5.4
图5.4缴费信息表包含了学生的总缴费,已缴费用等的基本结构。
图5.5
图5.5基本信息表包含了学生的学号,姓名基本内容。
图5.6
图5.6学分信息表包含了学生的总学分,已修学分基本内容。
6
基于VB和SQL的数据库编程技术
图5.7
图5.7登录信息表包含了学生的总学分,已修学分基本内容。
图5.8
图5.8登录信息表包含了学生的总缴费,已缴费用基本内容。
图5.9
图5.9为各表间的关系图。
7
基于VB和SQL的数据库编程技术
六、数据库应用开发与运行:(程序代码、界面图、详细功能说明)
6.1 登录程序代码、界面图、详细功能说明
a.登录界面程序代码:
(1)登录键
Private Sub Command1_Click()
Static count As Integer '静态变量,其值会保留 Dim sqlstr As String '创建一个字符串
Adodc1.RecordSource = \"select *from 登录 where 学号='\" & Text1 & \"'\" '显示表登录上的所有字段 Adodc1.Refresh '更新
If Adodc1.Recordset.BOF Then '若没有找到用户
MsgBox \"用户名错误,请重新输入!\警告\" Text1.Text = \"\"
Text1.SetFocus 'TEXT1获得焦点 Text2.Text = \"\" Else
Adodc1.RecordSource = \"select *from 登录 where 密码='\" & Text2 & \"'\" sqlstr = Adodc1.Recordset.Fields(\"密码\") sqlstr = Trim(sqlstr)
If Text2.Text = sqlstr Then Load Form1: Form1.Show Unload me Else
MsgBox \"密码错误,请重新输入!\警告\" Text2.Text = \"\" Text2.SetFocus End If count = 0 End If
count = count + 1 If count = 3 Then Unload Me End If End Sub (2)取消键
Private Sub Command2_Click() Hide Me End Sub
8
基于VB和SQL的数据库编程技术
b.登录界面图:
图6.1
图6.1为登录界面图包含登录内容。
c.登录界面详细功能说明
登录键
登录界面 退出键 输入学号 退出 找到用户 未找到用户 重新输入直至正确 输入密码 不正确 输入超过三次 重输密码 正确 正确 显示选择界面
图6.2
退出 图6.2为登录详细的功能实现流程,与实现的功能。
9
基于VB和SQL的数据库编程技术
6.2 选择界面程序代码、界面图、详细功能说明
a.选择界面程序代码:
(1)退出键
Private Sub Command1_Click() dengluxitong.Show Unload Me End Sub
(2)学生基本信息键
Private Sub 学生基本信息_Click(Index As Integer) jibenxinxi.Show Unload Me End Sub
(3)学分信息键
Private Sub 学分信息_Click(Index As Integer) xuefenxinxi.Show Unload Me End Sub
(4)学生缴费信息键
Private Sub 学生缴费信息_Click(Index As Integer) jiaofeixinxi.Show Unload Me End Sub
b.选择界面图:
图6.3
图6.3为选择界面图,包含多种功能选项。
10
基于VB和SQL的数据库编程技术
C.选择界面详细功能说明 学生基本信息界面 学生缴费信息界面 学分信息界面 登录界面 学生基本信息键 学生缴费信息键 学分信息键 退出键 选择界面 图6.4
图6.4为选择界面的实现选择的详细流程及其包含的详细功能。
6.3 缴费信息界面程序代码、界面图、详细功能说明
a.缴费信息界面程序代码:
(1)添加键
Private Sub Cmdadd1_Click() Dim sqlstr As String
Adodc1.RecordSource = \"select *from 缴费信息 where 学号='\" & Text1 & \"'\" Adodc1.Refresh
If Adodc1.Recordset.EOF = False Then '判断学号是否重复 MsgBox (\"学号重复错误!\"), vbExclamation, \"检查学号\" Text1 = \"\"
Text1.SetFocus Adodc1.Refresh Exit Sub Else
Adodc1.RecordSource = \"select *from 登录 where 学号='\" & Text1 & \"'\" Adodc1.Refresh
If Adodc1.Recordset.BOF Then '诺没有找到用户
MsgBox \"学号错误,请重新输入!\检查学号\" Text1.Text = \"\"
Text1.SetFocus 'TEXT1获得焦点、
Adodc1.RecordSource = \"select *from 缴费信息 \" Adodc1.Refresh Exit Sub End If End If
Adodc1.RecordSource = \"select *from 登录 where 姓名='\" & Text2 & \"'\" sqlstr = Adodc1.Recordset.Fields(\"姓名\") sqlstr = Trim(sqlstr)
11
基于VB和SQL的数据库编程技术 If Text2.Text <> sqlstr Then
MsgBox \"姓名错误,请重新输入!\警告\" Text2.Text = \"\"
Text2.SetFocus 'TEXT2获得焦点
Adodc1.RecordSource = \"select *from 缴费信息 \" Adodc1.Refresh Exit Sub Else
Adodc1.RecordSource = \"select *from 缴费信息 \" Adodc1.Refresh
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(\"学号\") = Text1.Text Adodc1.Recordset.Fields(\"姓名\") = Text2.Text Adodc1.Recordset.Fields(\"专业\") = Text3.Text Adodc1.Recordset.Fields(\"总缴费\") = Text4.Text Adodc1.Recordset.Fields(\"已缴费用\") = Text5.Text Adodc1.Recordset.Fields(\"还需缴费\") = Text6.Text Adodc1.Recordset.Update
Adodc1.RecordSource = \"select *from 缴费信息 \" Adodc1.Refresh
MsgBox (\"添加成功!\") End If End Sub
(2)还需缴费键
Private Sub Command3_Click()
If Val(Text4.Text) < Val(Text5.Text) Then Text6.Text = 0
a = Abs(Val(Text4.Text) - Val(Text5.Text)) MsgBox (\"该学生还有退款\" & a & \"元!\") End If
If Val(Text4.Text) = Val(Text5.Text) Then a = Val(Text4.Text) - Val(Text5.Text) Text6.Text = a End If
If Val(Text4.Text) > Val(Text5.Text) Then a = Val(Text4.Text) - Val(Text5.Text) Text6.Text = a
MsgBox (\"该学生还需缴费\" & a & \"元!\") End If End Sub (3)删除键
Private Sub Cmddelete_Click() Dim myval As String
myval = MsgBox(\"是否要删除该记录?\ If myval = vbYes Then
12
基于VB和SQL的数据库编程技术 Adodc1.Recordset.Delete Adodc1.Recordset.MoveNext MsgBox (\"删除成功!\") End If End Sub (4)修改键
Private Sub Cmdmodify_Click() jiaofeixinxixiugai.Show End Sub (5)刷新键
Private Sub Command1_Click()
Adodc1.RecordSource = \"select * from 缴费信息\" Adodc1.Refresh End Sub
(5)返回选择界面键
Private Sub Cmdexit_Click() Form1.Show Unload Me End Sub
(6)重新登录键
Private Sub Command2_Click() dengluxitong.Show Unload Me End Sub (7)统计键
Private Sub Command5_Click() Sum = 0
For i = 0 To Adodc1.Recordset.RecordCount - 1 DataGrid1.Row = i
If Trim(Adodc1.Recordset.Fields(\"还需缴费\")) <> 0 Then sum1 = sum1 + 1 Else
sum1 = sum1 + 0 End If
If Trim(Adodc1.Recordset.Fields(\"已缴费用\")) >= 100000 Then sum2 = sum2 + 1 Else
sum2 = sum2 + 0 End If
If Trim(Adodc1.Recordset.Fields(\"已缴费用\")) > 100000 Then sum3 = sum3 + 1 Else
sum3 = sum3 + 0 End If Next i
13
基于VB和SQL的数据库编程技术 Text8.Text = sum1 Text9.Text = sum2 Text10.Text = sum3 End Sub (8)查询键
Private Sub Command4_Click()
Adodc1.RecordSource = \"select *from 登录 where 学号='\" & Text7 & \"'\" Adodc1.Refresh
If Adodc1.Recordset.BOF Then '诺没有找到用户
MsgBox \"学号错误,请重新输入!\警告\" Text7.Text = \"\"
Text7.SetFocus 'TEXT1获得焦点
Adodc1.RecordSource = \"select * from 缴费信息 \" Adodc1.Refresh Exit Sub Else
Adodc1.RecordSource = \"select * from 缴费信息 where 学号='\" & Text7 & \"'\"
Adodc1.Refresh End If End Sub
b.缴费信息界面图:
图6.5
图6.5为缴费信息的界面图,以及其包含的选项。
14
基于VB和SQL的数据库编程技术
c.缴费信息界面详细功能说明
(1)总布局图
缴费信息界面 添加键
图6.6
删除键 计算键 修改键 重新登录键 返回选择界面键 查询键 统计键 图6.6为缴费信息界面的各个将实现的详细功能,其中有些功能实现简单,像删除键,返回键等等。但有些功能实现较为复杂。将复杂的过程简单,将以图6.7,图6.8,图6.9简单明了的介绍其流程。
(2)计算键流程图
计算键 总缴费<已缴费
总缴费=已缴费 总缴费>已缴费 显示需缴费情况或需退款情款 图6.7
图6.7为计算键流程图,有这样的流程图,思路清晰,会使编程过程简单化。
15
基于VB和SQL的数据库编程技术 (3)添加键流程图
学号重复 添加键 学号无重复 没有找到用户
重新输入学号,直至找到用户 找到用户
添加其他信息 姓名正确 输入姓名 姓名错误 重新输入姓名直至正确
按添加键 添加成功 图6.8
图6.8为添加键流程图,添加的过程十分的复杂。但画出流程图之后会是编程的过程少走很多弯路。
(4)统计键流程图
统计键 判断还需缴费与总缴费的大小 显示结果 图6.9
图6.9为统计键流程图, 统计键的流程看似简单,但其中包含了许多知识,但我们主要围绕判断大小而展开分析。
16
基于VB和SQL的数据库编程技术
6.4缴费信息修改界面程序代码、界面图、详细功能说明
a.缴费信息修改界面程序代码
(1)修改键
Private Sub Command2_Click() Dim a As String Dim b As String Dim c As String Dim d As String Dim e As String a = Text1.Text b = Text2.Text c = Text3.Text d = Text4.Text e = Text6.Text
Adodc1.Recordset.Fields(\"专业\") = a Adodc1.Recordset.Fields(\"总缴费\") = b Adodc1.Recordset.Fields(\"已缴费用\") = c Adodc1.Recordset.Fields(\"还需缴费\") = d Adodc1.Recordset.Fields(\"还需退款\") = e Adodc1.Recordset.Update Adodc1.Refresh End Sub (2)显示键
Private Sub Command1_Click()
Adodc1.RecordSource = \"select *from 缴费信息 where 学号='\" & Text5 & \"'\" Adodc1.Refresh
If Adodc1.Recordset.BOF Then '诺没有找到用户
MsgBox \"学号错误,请重新输入!\警告\" Text5.Text = \"\"
Text5.SetFocus 'TEXT1获得焦点
Adodc1.RecordSource = \"select * from 缴费信息 \" Adodc1.Refresh Exit Sub Else
Text1.Text = Adodc1.Recordset.Fields(\"专业\")
17
基于VB和SQL的数据库编程技术 Text2.Text = Adodc1.Recordset.Fields(\"总缴费\") Text3.Text = Adodc1.Recordset.Fields(\"已缴费用\") Text4.Text = Adodc1.Recordset.Fields(\"还需缴费\") End If End Sub
(3)其他键与缴费信息界面里也要实现的控件的大致相同,详情见6.3a。
b.缴费信息修改界面图:
图6.10
图6.10为缴费信息修改图,其中包含了它的信息,及要实现功能的控件。 c.缴费信息修改界面详细功能说明 (1)总流程图
缴费信息修改界面 显示该学生原始信息键 修改键 退出键 计算键 图6.11 图6.11为缴费信息修改的详细流程图,及其将要实现的详细功能。
18
基于VB和SQL的数据库编程技术
6.5学分信息界面程序代码、界面图、详细功能说明
a.学分信息界面程序代码
代码详情可见6.3a里的缴费信息代码,各个键将要实现的功能大致相同。
b.学分信息界面图
图6.12
图6.12为学分信息功能的界面图,与缴费信息不管是布局还是功能的实现大致相同。
c.学分信息界面详细功能说明
详情见6.3c描述,学分信息江实现功能于缴费信息大致相同。
19
基于VB和SQL的数据库编程技术
6.6学分信息修改界面程序代码、界面图、详细功能说明
a.学分信息修改界面程序代码
代码可见6.4a里的缴费信息修改代码,各个键功能的实现与之大致相同。
b.学分信息修改界面图
图6.13
图6.13为学分信息修改的界面图,将要实现的功能以及布局与缴费信息大致一直。
c.学分信息界面详细功能说明
详情见6.4c描述,学分信息修改功能与缴费信息修改大致相同。
20
基于VB和SQL的数据库编程技术
6.7基本信息界面程序代码、界面图、详细功能说明
a.基本信息界面程序代码
详细代码可见6.3a里的缴费信息代码,各个键将要实现的功能与之大致相同。
b.基本信息界面图
图6.14
图6.14为基本界面图,包含了各个功能键,显示了它的布局。
c.学生信息界面详细功能说明
详情见6.3c描述,基本信息实现的功能与缴费信息大致相同。
21
基于VB和SQL的数据库编程技术
6.8基本信息修改界面程序代码、界面图、详细功能说明
a.基本信息修改界面程序代码
代码可见6.4a里的缴费信息修改代码,各个键实现的功能与之大致相同。
b.基本信息修改界面图
图6.15
图6.15为学生信息修改的界面图,包含了其将要实现的各个功能键,信息,还有它的布局。
c.学分信息界面详细功能说明
详情见6.4c描述,基本信息修改实现的功能与缴费信息修改大致相同。
22
基于VB和SQL的数据库编程技术
七、结果分析、结论与体会:
此次课程设计经历了漫长的时间,主要是学习了SQL2000和vb6.0的一些基础操作和他们的功能。而我们通过自身的实践更加巩固了基本知识,而且还提升了自己的动手操作能力和逻辑思维能力。在完成此次课程设计中,我遇到了很多问题。就连在安装软件上我也花了很长的时间,感觉SQL2000和vb6.0这两款软件的兼容性都不是很好。我在重装了四次系统才把这些软件全部安装好。在编写程序的时候我也遇到了很多很多的问题,一次次的尝试与失败对我来说都是弥足珍贵的。每一次的成功也是令人喜悦的。虽然这次课程设计不是很深入,在逻辑上也不是很清晰,有些地方也不是很完善。但这次课程设计,我真的学到了很多,不管是知识上的,还是自己的学习方式都有一定的提高!希望以后也能这样继续下去!
23
基于VB和SQL的数据库编程技术
八、参考文献及资料:
[1] 刘志妩,张焕君,马秀丽,基于VB和SQL的数据库编程技术,2008,4 [2] 张志强,孙兆福,余健等,SQL Server 2005 课程设计案例精编,清华大学出版社
[3] 林孙兴,赵建峰,visual basic 程序设计基础,中国水利水电出版社
24
基于VB和SQL的数据库编程技术
考核成绩评定表
指导教师考核成 绩 答辩成绩 总 成 绩
签字:
年 月 日
25
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- vipyiyao.com 版权所有 湘ICP备2023022495号-8
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务