学生信息管理系统完整.docx
- 文档编号:5865248
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:22
- 大小:328.89KB
学生信息管理系统完整.docx
《学生信息管理系统完整.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统完整.docx(22页珍藏版)》请在冰豆网上搜索。
学生信息管理系统完整
学生信息管理系统(总体设计)
1、管理系统功能模块设计
本系统需要完成的功能主要有:
(1)、有关学籍信息的输入,包括输入学生基本信息、所在班级、所学课程和成绩等。
(2)、学生信息的查询,包括查询学生基本信息、所在班级、已学课程和成绩等。
(3)、学生信息的修改。
(4)、班级管理信息的输入,包括输入班级设置、年级信息等。
(5)、班级管理信息的查询。
(6)、班级管理信息的修改。
(7)、学校基本课程信息的输入。
(8)、基本课程信息的修改。
(9)、学生课程设置和修改。
(10)、学生成绩信息的输入。
(11)、学生成绩信息的修改。
(12)、学生成绩信息的查询。
(13)、学生成绩信息的统计。
2、功能模块设计:
3、数据库设计:
(1)学生基本信息:
student_Info
列名
数据类型
说明
Student_id
Int(4)
学号(主键)
Student_name
Char(10)
姓名
Student_sex
Char
(2)
性别
Born_date
Datetime(8)
出生日期
Class_no
Int(4)
班级号
Tele_number
Char(10)
联系电话
Ru_date
Datetime(8)
入校时期
Address
Varchar(50)
家庭住址
comment
Varchar(200)
备注
(2)班级基本信息:
class_Info
列名
数据类型
说明
Class_no
Int(4)
班级号(主键)
Class_name
Varchar(50)
班级名称
Director
Varchar(50)
班主任
profession
Varchar(50)
专业
(3)课程基本信息:
course_Info
列名
数据类型
说明
Course_no
Int(4)
课程编号(主键)
Course_name
Char(10)
课程名称
Course_type
Char(10)
课程类型
Course_start
Char(10)
开始学期
Course_time
Int(4)
学时数
Course_score
Int(4)
学分
(4)学生成绩信息:
result_Info
列名
数据类型
说明
Student_id
Int(4)
学号(主键)
Student_name
Char(10)
姓名
Course_no
Int(4)
课程号(主键)
Course_type
Char(10)
课程类型
result
Float(8)
成绩
(5)用户信息:
user_Info
列名
数据类型
说明
User_code
Varchar(50)
用户密码(主键)
User_name
Varchar(50)
用户名(主键)
学生信息管理系统(需求分析)
1.系统开发背景分析
系统的功能取决开用户的需求。
随着科技进步和信息时代的到来,教育的普及程度起来起高,学校的人数也在迅速的增长,怎样的管理好成千上万的学生,已经成为一个学校的管理者必须面对的问题。
编写本报告的目的就是用最少的代价,尽可能短的时间内确定问题是否能够解决,通过对学校的一些管理软件的调研分析,发现了一些不足,所以拟做此系统,使学生信息的管理更加准确,安全和快捷。
在本次试验中包括的模块有学生信息管理、课程信息管理、成绩信息管理和班级信息管理等几项,各项管理工作涉及到的内容用下面的关系模式表示。
a)学生(学号,姓名,性别,年龄,班级,电话,备注,出生日期,入学时间,班级编号,家庭地址)
b)课程(课程编号,课程名称,课程类别,学分,学时)
c)班级(系,班级号,指导老师)
2.系统分析
1.抽象出当前系统的逻辑模型
画出反映当前系统工作的数据流程图。
数据流程图是逻辑模型的图形表示,即使不是专业的计算机技术人员也能非常容易理解,它是一种很好的系统构造的表示方法。
画数据流程图是应该从已获得的人工处理流程中去掉物理因素,只保留数据、信息处理部分。
2.系统功能分析
系统主要用于学校学生信息管理,主要任务是用计算机对学生各种信息进行日常管理,如:
查询、修改、增加、删除。
3.系统目标设计
根据本校的实际情况,利用校园网而设计一套针对性和功能都比较强的学生信息管理系统,对学生信息管理系统进行科学的分类、录入、查询.
4.开发设计思想
尽量采用学校现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用资源,提高系统开发的水平和应用效果的目的。
系统应该符合学校学生信息管理的规定,满足学校学生日常管理的需要,达到操作过程中的直观、方便、实用、安全等要求。
强调多部门合作,学生工作设计面广泛,应该考虑各部门各层次的需求,便于维护。
要建立可靠的数据备份。
通过对数据流程图的进一步分析,得出学生信息管理系统应该具备以下功能:
1、实现学生基本信息的登记
2、实现数据的浏览与修改
3、实现查询符合一定条件的资料
4、实现学生有关数据的统计分析
5.E-R图
6.数据流程图
7.数据字典
学生信息管理系统(实现、调试、运行)
编码
1、登录模块代码:
OptionExplicit
PrivateSubcmd3_Click()
DimcnAsADODB.Connection
DimrsAsADODB.Recordset
Dimstr_cnAsString'访问sqlserver的连接字符串
Dimstr_sqlAsString
str_cn="driver={sqlserver};server=.;uid=sa;pwd=;database=student"
Setcn=NewADODB.Connection
cn.CursorLocation=adUseClient
cn.Openstr_cn'连接sqlserver
str_sql="select*fromuser_infowhereuser_name='"&Text1.Text&"'anduser_code='"&Text2.Text&"'"
Setrs=NewADODB.Recordset
rs.Openstr_sql,cn,adOpenDynamic,adLockOptimistic
IfLen(Text1.Text)=0Then
MsgBox"请输入用户名!
",64,"提示"
Text1.SetFocus
ElseIfLen(Text2.Text)=0Then
MsgBox"请输入密码!
",64,"提示"
Text2.SetFocus
Else
Ifrs.RecordCount=0Then
i=MsgBox("不存在该用户,是否立即注册?
",4+32,"提示")
Ifi=6Then
UnloadMe
Form3.Show
Else
mdlTextBox.BlankMe
Text2.SetFocus
EndIf
Else
'UnloadMe
Form1.Hide
Form4.Show
EndIf
EndIf
EndSub
PrivateSubForm_Load()
mdlTextBox.CentenMe'使窗体居中
EndSub
PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
Label5.ForeColor=vbBlack
Label5.FontUnderline=False
Label6.ForeColor=vbBlack
Label6.FontUnderline=False
EndSub
PrivateSubLabel5_Click()
UnloadMe
Form3.Show
EndSub
PrivateSubLabel5_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
Label5.ForeColor=vbBlue
Label5.FontUnderline=True
EndSub
PrivateSubLabel6_Click()
UnloadMe
Form2.Show
EndSub
PrivateSubLabel6_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
Label6.ForeColor=vbBlue
Label6.FontUnderline=True
EndSub
2、添加学生信息代码:
OptionExplicit
PrivateSubCommand1_Click()
IfLen(Text1.Text)=0OrLen(Text6.Text)=0Then
MsgBox"请将信息补充完整!
",48,"警告"
ExitSub
EndIf
'添加新记录
sqlstr="select*fromstudent_Info"
Setrs=ExecuteSQL(sqlstr,Msg)
rs.AddNew
rs.Fields("student_id")=Text6.Text
rs.Fields("student_name")=Text1.Text
rs.Fields("class_no")=Combo2.Text
rs.Fields("born_date")=Text2.Text
rs.Fields("student_sex")=Combo1.Text
rs.Fields("address")=Text4.Text
rs.Fields("tele_number")=Text7.Text
rs.Fields("comment")=Text5.Text
rs.Fields("ru_date")=Text3.Text
rs.Update
rs.Close
MsgBox"学生信息添加完成!
",48,"提示信息"
mdlTextBox.BlankMe
EndSub
PrivateSubCommand2_Click()
UnloadMe
Form4.Show
EndSub
PrivateSubForm_Load()
mdlTextBox.CentenMe
mdlTextBox.BlankMe
Combo1.Text="男":
Combo2.Text=""
Combo1.AddItem"男"
Combo1.AddItem"女"
sqlstr="select*fromclass_Info"
Setrs=ExecuteSQL(sqlstr,Msg)
Fori=1Tors.RecordCount
Combo2.AddItemrs.Fields(0)
rs.MoveNext
Nexti
rs.Close
EndSub
3、删改学生信息代码:
OptionExplicit
PrivateSubCommand4_Click()
'从数据库中读取学生信息并添加到窗体中的输入框
sqlstr="select*fromstudent_Infowherestudent_id='"&Combo2.Text&"'andclass_no='"&Combo1.Text&"'"
Setrs=ExecuteSQL(sqlstr,Msg)
Ifrs.RecordCount=0Then
MsgBox"没有找到符合条件的数据!
",48,"警告"
mdlTextBox.BlankMe:
Combo3.Text=""
Else
Text2.Text=Trim(rs.Fields("student_id"))
Text1.Text=Trim(rs.Fields("student_name"))
Text3.Text=Trim(rs.Fields("born_date"))
Combo3.Text=Trim(rs.Fields("class_no"))
Combo4.Text=Trim(rs.Fields("student_sex"))
Text4.Text=Trim(rs.Fields("tele_number"))
Text5.Text=Trim(rs.Fields("address"))
Text6.Text=Trim(rs.Fields("comment"))
Text7.Text=Trim(rs.Fields("ru_date"))
EndIf
rs.Close
EndSub
PrivateSubCommand1_Click()
DimcnAsADODB.Connection
sqlstr="updatestudent_infosetstudent_name='"&Text1.Text&"',born_date='"&Text3.Text&"',student_sex='"&Combo4.Text&"',class_no='"&Combo1.Text&"',tele_number='"&Text4.Text&"',address='"&Text5.Text&"',comment='"&Text6.Text&"',ru_date='"&Text7.Text&"'wherestudent_id='"&Combo2.Text&"'"
OnErrorGoToexitsub
Setcn=NewADODB.Connection
cn.Openconnstr
cn.Executesqlstr
MsgBox"成功修改数据!
!
"
exitsub:
cn.Close
mdlTextBox.BlankMe:
Combo3.Text=""
EndSub
PrivateSubCommand2_Click()
DimcnAsADODB.Connection
sqlstr="deletefromstudent_infowherestudent_id='"&Combo2.Text&"'"
OnErrorGoToexitsub
Setcn=NewADODB.Connection
cn.Openconnstr
cn.Executesqlstr
MsgBox"成功删除数据!
!
"
exitsub:
cn.Close
mdlTextBox.BlankMe:
Combo3.Text=""
EndSub
PrivateSubCommand3_Click()
UnloadMe
Form4.Show
EndSub
PrivateSubForm_Load()
mdlTextBox.CentenMe
Combo1.Text="":
Combo2.Text=""
mdlTextBox.BlankMe
Combo3.Text=""
Combo4.Text="男"
Combo4.AddItem"男"
Combo4.AddItem"女"
DimsqlstrAsString
DimMsgAsString
DimiAsInteger
sqlstr="select*fromclass_Info"
Setrs=ExecuteSQL(sqlstr,Msg)
Fori=1Tors.RecordCount
Combo1.AddItemrs.Fields(0)
Combo3.AddItemrs.Fields(0)
rs.MoveNext
Next
DimsqlAsString
DimmsgtextAsString
sql="select*fromstudent_Info"
Setrs=ExecuteSQL(sql,msgtext)
Fori=1Tors.RecordCount
Combo2.AddItemrs.Fields(0)
rs.MoveNext
Next
rs.Close
EndSub
4、查询学生信息:
OptionExplicit
PrivateSubCommand1_Click()
DimrsAsNewADODB.Recordset
DimcnAsNewADODB.Connection
DimcnstrAsString
cnstr="driver={sqlserver};server=.;uid=sa;pwd=;database=student"
cn.Opencnstr
IfOption1.Value=TrueThen
sqlstr="select*fromstudent_info"
Combo1.Text=""
Text1.Text="":
Text2.Text=""
EndIf
IfOption2.Value=TrueThen
sqlstr="select*fromstudent_infowhereclass_no='"&Combo1.Text&"'"
Text2.Text="":
Text1.Text=""
EndIf
IfOption3.Value=TrueThen
sqlstr="select*fromstudent_infowherestudent_id='"&Text1.Text&"'"
Combo1.Text="":
Text2.Text=""
EndIf
IfOption4.Value=TrueThen
sqlstr="select*fromstudent_infowherestudent_name='"&Text2.Text&"'"
Combo1.Text="":
Text2.Text=""
EndIf
rs.Opensqlstr,cn
Setrs=ExecuteSQL(sqlstr,Msg)
Ifrs.RecordCount=0Then
MsgBox"没有查找到满足条件的数据!
",48,"提示"
fgStudent.Rows=1
Else
fgStudent.Rows=rs.RecordCount+1
fgStudent.Cols=9
'设定行高
Fori=0TofgStudent.Rows-1
fgStudent.RowHeight(i)=280
Nexti
'设定列的属性
fgStudent.Row=0
Fori=0TofgStudent.Cols-1
fgStudent.Col=i'指定当前列为第I列
fgStudent.FixedAlignment(i)=4'使内容居中
SelectCasei
Case0
fgStudent.ColWidth(i)=1500'设定列宽
fgStudent.Text="学号"
Case1
fgStudent.ColWidth(i)=2000'设定列宽
fgStudent.Text="姓名"
Case2
fgStudent.ColWidth(i)=800'设定列宽
fgStudent.Text="性别"
Case3
fgStudent.ColWidth(i)=800'设定列宽
fgStudent.Text="班级"
Case4
fgStudent.ColWidth(i)=1300'设定列宽
fgStudent.Text="出生日期"
Case5
fgStudent.ColWidth(i)=1500'设定列宽
fgStudent.Text="电话"
Case6
fgStudent.ColWidth(i)=1500
fgStudent.Text="入学时间"
Case7
fgStudent.ColWidth(i)=2500'设定列宽
fgStudent.Text="地址"
Case8
fgStudent.ColWidth(i)=3000'设定列宽
fgStudent.Text="备注信息"
EndSelect
Nexti
i=1'从第二行开始显示内容
While(Notrs.EOF)
fgStudent.Row=i
Forj=0TofgStudent.Cols-1
fgStudent.Col=j
fgStudent.CellAlignment=4
SelectCasej
Case0
fgStudent.Text=rs.Fields("student_id")
Case1
fgStudent.Text=rs.Fields("student_name")
Case2
fgStudent.Text=rs.Fields("student_sex")
Case3
fgStudent.Text=rs.Fields("class_no")
Case4
fgStudent.Text=rs.Fields("born_date")
Case5
fgStudent.Text=rs.Fields("tele_number")
Case6
fgStudent.Text=rs.Fields("ru_date")
Case7
fgStudent.Text=rs.Fields("address")
Case8
fgStudent.Text=rs.Fields("comment")
EndSelect
Nextj
rs.MoveNext
i=i+1
Wend
EndIf
rs.Close
EndSub
Private
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统 完整