VB课程设计报告 1.docx
- 文档编号:4268308
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:23
- 大小:1.28MB
VB课程设计报告 1.docx
《VB课程设计报告 1.docx》由会员分享,可在线阅读,更多相关《VB课程设计报告 1.docx(23页珍藏版)》请在冰豆网上搜索。
VB课程设计报告1
(此文档为word格式,下载后您可任意编辑修改!
)
新疆工程学院
课程设计说明书
题目名称:
VB.NET程序设计
摘要
学生成绩管理是教育部门的一个重要内容。
随着学生数量增加,学生成绩管理工作也变得越来越复杂。
早期的学生统计都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现学生信息错误的现象。
早期学生管理多采取纸质材料和具有较强的时间限制。
基于以上原因,学生成绩管理系统使用电脑安全保存、快速计算、全面统计,实现学生管理的系统化、规范化、自动化。
学生成绩管理系统是典型的信息管理系统,前台程序开发工具采用微软的VB.net,后台数据库采用SQLserve2005数据库。
VB是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。
SQLserve2005数据库具有与VB无缝连接、操作简单、易于使用的优点。
运行结果证明,学生管理系统极大提高了工作效率,节省了人力和物力,最终满足学生管理、学生信息统计的需要,同时也成为现代化学生管理的标志。
关键字:
学生成绩管理系统;SQLServer;VB.net;连接
目录
第1章系统规划1
1.1系统可行性分析1
1.1.1技术可行性分析1
1.1.2经济可行性分析1
1.1.3社会可行性分析1
1.2系统需求分析1
1.3E-R图2
1.4系统功能设计图2
第2章功能实现3
2.1SQLsever20053
2.1.1导入数据3
2.1.2设置字段类型6
第3章界面设计及代码7
3.1form1的设计7
3.1.1密码错误时登陆界面7
3.1.2代码的实现9
3.2form2的设计11
图2.1412
3.2.1代码的实现13
3.3form3的设计15
3.3.1form3的运行界面:
15
3.3.2代码的实现15
3.4form4的设计16
3.4.1运行界面:
16
3.4.2代码的实现16
3.5数据库分离17
第4章总结20
第5章致谢21
第6章参考文献22
第1章系统规划
1.1系统可行性分析
1.1.1技术可行性分析
从硬件和开发环境上考虑,除了数据库服务器需求稍微高了些,其他方面都可以在现有的条件下解决。
从技术上看,利用做前台和sqlserver做后台连接很方便,一般了解怎样使用这两个软件的基本上都可以操作。
本系统力求性能稳定、数据精确、决策及时,提高人员利用率,减少设备费用,减少工作时间已达到优化管理的目的。
1.1.2经济可行性分析
本系统所用的开发工具和软件都差不多是免费的。
而且,由于系统能够在未来较长的一段时期稳定的发挥作用,这对于学生管理,节省企业的人力、物力资源等都有很大的帮助,由此可见开发此系统在经济上是完全可行的。
1.1.3社会可行性分析
学生管理广泛应用于各行各业,它是教育机构中必不可少的一个环节,所以学习制作通用的学生管理系统很有必要。
本文根据实际需求,制作了一个简单、易用而且适用面比较广的学生管理系统,其界面友好、功能丰富而不繁杂,并且程序的设计都基于面向对象的思想,且条理清晰,方便了各教育机关部门根据自己的实际修改、增强系统功能。
本系统采用文本框和网络控件同步显示数据的方式,让用户更清晰地从界面了解重要的信息,也可以让用户快速查询数据,并可以对记录进行添加删除和修改,还可以根据工号查找历史记录。
1.2系统需求分析
需求分析的过程可以说是一个具体问题的反复理解和抽象的过程。
需求分析阶段是软件产品生存命期的一个重要阶段,其根本任务是确定用户对软件系统的需求。
所谓需求是指用户对软件性能和功能的要求。
学生管理系统正是一款可以方便快捷的达到一般人们对于一般要求的功能,简单的利用sql和进行操作。
就可以节省许多人力和物力,也能满足于一般的期望。
1.3E-R图
1.4系统功能设计图
第2章功能实现
2.1SQLsever2005
2.1.1导入数据
用sa身份登录SQLsever2005,导入之前准备的数据,我们所做的学生成绩管理包括两张表,其中包括stu表和用户表。
使用SQLServer建立数据库
1、程序MicrosoftSQLServer企业管理器local(WindowsNT)
数据库单击右键,新建数据库确定
2、选择数据库表单击右键,新建表输入各字段的名称、类型和宽度确定
参考代码:
PublicFunctionGetDataSource(ByValsqlAsString)AsDataTable
DimsqlConAsNewSqlClient.SqlConnection("DataSource=admin;Database=信息库;UserId=sa;Pwd=")
DimsqlAdaAsSqlClient.SqlDataAdapter
DimdtAsDataTable
sqlAda=NewSqlClient.SqlDataAdapter(NewSqlClient.SqlCommand(sql,sqlCon))
dt=NewDataTable
Try
sqlAda.Fill(dt)
CatchexAsException
MessageBox.Show(ex.Message+Chr(10)+Chr(13)+ex.StackTrace)
ReturnNewDataTable
EndTry
Returndt
EndFunction
数据库连接:
1、SQL启动安全性登录名sa(右键)属性常规密码(任意改)-->
去掉“强制实施密码策略”|状态启用确定
2、选择用户数据库(右键)属性文件所有者该成sa用户确定
3、服务器上(admin)属性安全性SQLServer和Windows身份验证
4、服务器(右键)重启
5、安全性sa属性密码去掉(空白)确定
数据库附加过程:
图2.1
图2.2
图2.3
图2.4
图2.5
图2.6
2.1.2设置字段类型
图2.7
图2.8
第3章界面设计及代码
3.1form1的设计
3.1.1密码错误时登陆界面
图2.9
教师登陆界面
图2.10
学生登陆界面
图2.11
图2.12
3.1.2代码的实现
前台界面和后台数据库连接的代码:
PrivateSubForm2_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
Me.DataGridView1.DataSource=GetDataSource("select*fromstu")
EndSub
登陆按钮代码:
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
StaticnAsInteger
IfRadioButton1.Checked=TrueThen
IfMe.TextBox1.Text=""AndMe.TextBox2.Text=""Then
MsgBox("用户名或密码不能为空,请重新输入!
",0+16,"提示")
Me.TextBox1.Focus()
ElseIfMe.TextBox1.Text<>""AndMe.TextBox2.Text=""Then
MsgBox("密码不能为空,请重新输入!
",0+16,"提示")
Me.TextBox2.Focus()Else
str="select*from用户表where用户名='"&Me.TextBox1.Text&"'and密码='"&Me.TextBox2.Text&"'And类='0'"
DimdtAsDataTable=Module1.GetDataSource(str)
Ifdt.Rows.Count=0Then
MsgBox("用户名或密码错误,请重新输入!
",0+16,"提示")
Me.TextBox1.Text=""
Me.TextBox2.Text=""
Me.TextBox1.Focus()
n+=1
Ifn=3Then
Me.Close()
EndIf
Else
Form2.Show()
Me.Hide()
EndIf
EndIf
EndIf
IfMe.RadioButton2.Checked=TrueThen
IfMe.TextBox1.Text=""AndMe.TextBox2.Text=""Then
MsgBox("用户名或密码不能为空,请重新输入!
",0+16,"提示")
Me.TextBox1.Focus()
ElseIfMe.TextBox1.Text<>""AndMe.TextBox2.Text=""Then
MsgBox("密码不能为空,请重新输入!
",0+16,"提示")
Me.TextBox2.Focus()
Else
str="select*from用户表where用户名='"&Me.TextBox1.Text&"'and密码='"&Me.TextBox2.Text&"'And类='1'"
DimdtAsDataTable=Module1.GetDataSource(Str)
Ifdt.Rows.Count=0Then
MsgBox("用户名或密码错误,请重新输入!
",0+16,"提示")
Me.TextBox1.Text=""
Me.TextBox2.Text=""
Me.TextBox1.Focus()
n+=1
Ifn=3Then
MsgBox("您不能进入该系统")
Me.Close()
EndIf
Else
Form3.Show()
Me.Hide()
Form2.Label1.Text&=Me.TextBox1.Text
EndIf
EndIf
EndIf
EndSub
EndClass
取消按钮代码:
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
Me.TextBox1.Text=""
Me.TextBox2.Text=""
Me.TextBox1.Focus()
EndSub
退出按钮代码:
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
End
EndSub
文字移动代码:
退出按钮代码:
PrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick
IfLabel1.Left<=Me.WidthThen
Label1.Left=Label1.Left+2
Else
Label1.Left=0
EndIfEndSub
3.2form2的设计
Form2的界面设计
图2.13
form2运行界面:
图2.14
查询运行界面
图2.15
添加运行界面
图2.16
3.2.1代码的实现
查询代码:
PrivateSubButton1_Click_1(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Dimsqltxt,txt1AsString
txt1=Me.TextBox1.Text.ToString
IfMe.RadioButton1.Checked=TrueThen
sqltxt="select*fromstuwhere学号='"&txt1&"'"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndIf
IfMe.RadioButton2.Checked=TrueThen
sqltxt="select*fromstuwhere姓名='"&txt1&"'"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndIf
EndSub
修改代码:
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
DimsqltxtAsString
sqltxt="UpdatestuSet学号='"&TextBox2.Text&"'Where学号='"&TextBox3.Text&"'"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndSub
删除代码:
PrivateSubButton4_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton4.Click
Dimsqltxt,txt1AsString
txt1=Me.TextBox1.Text.ToString
IfMe.RadioButton1.Checked=TrueThen
sqltxt="DeleteFromstuWhere学号='"&txt1&"'"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndIf
IfMe.RadioButton2.Checked=TrueThen
sqltxt="deletefromstuwhere姓名='"&txt1&"'"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndIfEndSub
刷新代码:
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
DimsqltxtAsString
sqltxt="select*fromstu"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndSub
退出代码:
PrivateSubButton6_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton6.Click
Form1.Show()
Me.Hide()
EndSub
3.3form3的设计
3.3.1form3的运行界面:
图2.17
3.3.2代码的实现
查询代码:
PublicClassForm3
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Dimsqltxt,txt1AsString
txt1=Me.TextBox1.Text.ToString
IfMe.RadioButton1.Checked=TrueThen
sqltxt="select*fromstuwhere学号="&txt1
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndIf
IfMe.RadioButton2.Checked=TrueThen
sqltxt="select*fromstuwhere姓名='"&TextBox1.Text&"'"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndIfEndSub
安全退出代码:
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
Form1.Show()
Me.Hide()
EndSubEndClass
3.4form4的设计
3.4.1运行界面:
form1教师登陆—添加记录—form4界面
图2.18
3.4.2代码的实现
添加的代码:
PublicClassForm4
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
DimsqltxtAsString
sqltxt="insertintostu(学号,姓名,性别,出生日期,成绩,班级)values('"&TextBox1.Text&"','"&TextBox2.Text&"','"&TextBox3.Text&"','"&TextBox4.Text&"','"&TextBox5.Text&"','"&TextBox6.Text&"')"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndSub
刷新的代码:
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
DimsqltxtAsString
sqltxt="select*fromstu"
Me.DataGridView1.DataSource=GetDataSource(sqltxt)
EndSub
退出代码:
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
Form2.Show()
Me.Close()
EndSub
模块的代码:
ModuleModule1
PublicFunctionGetDataSource(ByValsqlAsString)AsDataTable
DimsqlConAsNewSqlClient.SqlConnection("DataSource=B22;Database=student;UserId=sa;Pwd=")
DimsqlAdaAsSqlClient.SqlDataAdapter
DimdtAsDataTable
sqlAda=NewSqlClient.SqlDataAdapter(NewSqlClient.SqlCommand(sql,sqlCon))
dt=NewDataTable
Try
sqlAda.Fill(dt)
CatchexAsException
MessageBox.Show(ex.Message+Chr(10)+Chr(13)+ex.StackTrace)
ReturnNewDataTable
EndTry
Returndt
EndFunction
EndModule
3.5数据库分离
图2.19
图2.20
数据库分离的位置:
图2.21
数据库分离未附加时,程序运行的错误界面
图2.22
第4章总结
学生成绩管理系统是一个典型的信息管理系统,开发本系统的过程中首先要对企业工资管理进行系统调研,熟悉学生成绩管理的流程、步骤:
其次在系统需求分析过程中,要透过现象看本质,敏锐观察到企业工资管理存在的各种问题。
并在总体设计把握好对问题的分析、理解、进而解决问题:
选用开发工具要选用自己最最熟悉、应用较多的开发工具,本系统开发选用VB.NET,其具有语言简单、功能强大、组件众多的优点。
学生成绩管理系统极大提高了工作效率,节省了人力和物理,最终满足教育机构的管理,学生信息管理的需求,同时也成为现代教育机构管理的标志。
第5章致谢
从编写程序到拟定报告,历时两个星期。
在本设计完成之际,首先向我的指导老师以诚挚的谢意。
在报告的书写过程中,老师给了我许多的帮助和关怀,指导老师治学严谨,带人平易近人,在指导老师的细心指导下,我学到了扎实的专业知识。
同时,衷心感谢我的同床同学,在我的实训报告的写作中,与同学们的探讨交流是我收益颇多,同时,他们也给了我很多无私的帮助和支持,我深表谢意。
第6章参考文献
[1]李春葆,刘胜才,张志民,VisuaiBasic程序设计教程.北京:
清华大学出版社,2007,1
[2]中文VisuaiBasic实例全解教程王景义.编著.海口:
南方出版社,2007.12
[3]李俊民,精通SQL结构化查询语言详解(第二版).北京:
人民邮电出版社,2008.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB课程设计报告 VB 课程设计 报告