资源描述
学生信息管理系统(完整)
———————————————————————————————— 作者:
———————————————————————————————— 日期:
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、 登录模块代码:
Option Explicit
Private Sub cmd3_Click()
Dim cn As ADODB。Connection
Dim rs As ADODB.Recordset
Dim str_cn As String '访问sql server的连接字符串
Dim str_sql As String
str_cn = ”driver={sql server};server=.;uid=sa;pwd=;database=student"
Set cn = New ADODB。Connection
cn。CursorLocation = adUseClient
cn。Open str_cn ’连接sql server
str_sql = "select * from user_info where user_name=’" & Text1.Text & ”’ and user_code=’" & Text2.Text & "'”
Set rs = New ADODB.Recordset
rs。Open str_sql, cn, adOpenDynamic, adLockOptimistic
If Len(Text1.Text) = 0 Then
MsgBox "请输入用户名!", 64, "提示"
Text1.SetFocus
ElseIf Len(Text2。Text) = 0 Then
MsgBox ”请输入密码!”, 64, "提示”
Text2。SetFocus
Else
If rs.RecordCount = 0 Then
i = MsgBox("不存在该用户,是否立即注册?”, 4 + 32, ”提示")
If i = 6 Then
Unload Me
Form3.Show
Else
mdlTextBox.Blank Me
Text2。SetFocus
End If
Else
' Unload Me
Form1。Hide
Form4.Show
End If
End If
End Sub
Private Sub Form_Load()
mdlTextBox。Centen Me ’使窗体居中
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label5。ForeColor = vbBlack
Label5.FontUnderline = False
Label6。ForeColor = vbBlack
Label6。FontUnderline = False
End Sub
Private Sub Label5_Click()
Unload Me
Form3.Show
End Sub
Private Sub Label5_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label5.ForeColor = vbBlue
Label5。FontUnderline = True
End Sub
Private Sub Label6_Click()
Unload Me
Form2。Show
End Sub
Private Sub Label6_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label6.ForeColor = vbBlue
Label6。FontUnderline = True
End Sub
2、 添加学生信息代码:
Option Explicit
Private Sub Command1_Click()
If Len(Text1.Text) = 0 Or Len(Text6.Text) = 0 Then
MsgBox "请将信息补充完整!”, 48, "警告"
Exit Sub
End If
’添加新记录
sqlstr = ”select * from student_Info"
Set rs = 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.Blank Me
End Sub
Private Sub Command2_Click()
Unload Me
Form4。Show
End Sub
Private Sub Form_Load()
mdlTextBox.Centen Me
mdlTextBox.Blank Me
Combo1.Text = "男”: Combo2。Text = ””
Combo1.AddItem "男"
Combo1。AddItem "女"
sqlstr = "select * from class_Info"
Set rs = ExecuteSQL(sqlstr, Msg)
For i = 1 To rs.RecordCount
Combo2.AddItem rs。Fields(0)
rs.MoveNext
Next i
rs.Close
End Sub
3、 删改学生信息代码:
Option Explicit
Private Sub Command4_Click()
'从数据库中读取学生信息并添加到窗体中的输入框
sqlstr = ”select * from student_Info where student_id=’” & Combo2.Text & "' and class_no='” & Combo1.Text & ”’”
Set rs = ExecuteSQL(sqlstr, Msg)
If rs。RecordCount = 0 Then
MsgBox ”没有找到符合条件的数据!”, 48, "警告"
mdlTextBox.Blank Me: 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"))
End If
rs。Close
End Sub
Private Sub Command1_Click()
Dim cn As ADODB。Connection
sqlstr = "update student_info set student_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 & "' where student_id='” & Combo2。Text & ”'"
On Error GoTo exitsub
Set cn = New ADODB。Connection
cn.Open connstr
cn。Execute sqlstr
MsgBox ”成功修改数据!!”
exitsub:
cn.Close
mdlTextBox.Blank Me: Combo3。Text = ””
End Sub
Private Sub Command2_Click()
Dim cn As ADODB。Connection
sqlstr = ”delete from student_info where student_id='" & Combo2.Text & "'"
On Error GoTo exitsub
Set cn = New ADODB.Connection
cn.Open connstr
cn。Execute sqlstr
MsgBox "成功删除数据!!"
exitsub:
cn。Close
mdlTextBox.Blank Me: Combo3。Text = "”
End Sub
Private Sub Command3_Click()
Unload Me
Form4。Show
End Sub
Private Sub Form_Load()
mdlTextBox.Centen Me
Combo1。Text = "": Combo2.Text = ”"
mdlTextBox。Blank Me
Combo3。Text = "”
Combo4.Text = ”男"
Combo4。AddItem ”男”
Combo4.AddItem ”女"
Dim sqlstr As String
Dim Msg As String
Dim i As Integer
sqlstr = ”select * from class_Info”
Set rs = ExecuteSQL(sqlstr, Msg)
For i = 1 To rs。RecordCount
Combo1。AddItem rs.Fields(0)
Combo3。AddItem rs.Fields(0)
rs。MoveNext
Next
Dim sql As String
Dim msgtext As String
sql = "select * from student_Info”
Set rs = ExecuteSQL(sql, msgtext)
For i = 1 To rs。RecordCount
Combo2。AddItem rs.Fields(0)
rs.MoveNext
Next
rs。Close
End Sub
4、 查询学生信息:
Option Explicit
Private Sub Command1_Click()
Dim rs As New ADODB。Recordset
Dim cn As New ADODB.Connection
Dim cnstr As String
cnstr = "driver={sql server};server=.;uid=sa;pwd=;database=student"
cn。Open cnstr
If Option1.Value = True Then
sqlstr = "select * from student_info”
Combo1。Text = ””
Text1。Text = ”": Text2.Text = "”
End If
If Option2。Value = True Then
sqlstr = "select * from student_info where class_no=’" & Combo1。Text & ”’ ”
Text2。Text = ””: Text1.Text = ""
End If
If Option3.Value = True Then
sqlstr = ”select * from student_info where student_id='" & Text1。Text & ”’ ”
Combo1。Text = ”": Text2.Text = ””
End If
If Option4。Value = True Then
sqlstr = "select * from student_info where student_name=’” & Text2.Text & "’"
Combo1.Text = ”": Text2.Text = "”
End If
rs。Open sqlstr, cn
Set rs = ExecuteSQL(sqlstr, Msg)
If rs。RecordCount = 0 Then
MsgBox ”没有查找到满足条件的数据!”, 48, "提示”
fgStudent.Rows = 1
Else
fgStudent。Rows = rs。RecordCount + 1
fgStudent。Cols = 9
’设定行高
For i = 0 To fgStudent。Rows - 1
fgStudent。RowHeight(i) = 280
Next i
’设定列的属性
fgStudent。Row = 0
For i = 0 To fgStudent.Cols — 1
fgStudent.Col = i ’指定当前列为第I 列
fgStudent.FixedAlignment(i) = 4 ’使内容居中
Select Case i
Case 0
fgStudent。ColWidth(i) = 1500 '设定列宽
fgStudent。Text = "学号"
Case 1
fgStudent.ColWidth(i) = 2000 '设定列宽
fgStudent。Text = "姓名"
Case 2
fgStudent.ColWidth(i) = 800 ’设定列宽
fgStudent。Text = ”性别”
Case 3
fgStudent.ColWidth(i) = 800 ’设定列宽
fgStudent.Text = ”班级"
Case 4
fgStudent。ColWidth(i) = 1300 ’设定列宽
fgStudent.Text = ”出生日期"
Case 5
fgStudent。ColWidth(i) = 1500 '设定列宽
fgStudent。Text = "电话”
Case 6
fgStudent.ColWidth(i) = 1500
fgStudent.Text = "入学时间"
Case 7
fgStudent。ColWidth(i) = 2500 '设定列宽
fgStudent。Text = ”地址”
Case 8
fgStudent。ColWidth(i) = 3000 ’设定列宽
fgStudent。Text = "备注信息”
End Select
Next i
i = 1 ’从第二行开始显示内容
While (Not rs.EOF)
fgStudent。Row = i
For j = 0 To fgStudent.Cols - 1
fgStudent。Col = j
fgStudent。CellAlignment = 4
Select Case j
Case 0
fgStudent.Text = rs.Fields("student_id”)
Case 1
fgStudent。Text = rs。Fields(”student_name")
Case 2
fgStudent.Text = rs.Fields(”student_sex")
Case 3
fgStudent。Text = rs。Fields(”class_no")
Case 4
fgStudent.Text = rs.Fields(”born_date”)
Case 5
fgStudent.Text = rs。Fields("tele_number")
Case 6
fgStudent。Text = rs。Fields("ru_date")
Case 7
fgStudent。Text = rs。Fields(”address”)
Case 8
fgStudent。Text = rs。Fields(”comment”)
End Select
Next j
rs。MoveNext
i = i + 1
Wend
End If
rs。Close
End Sub
Private Sub Command2_Click()
Unload Me
Form4.Show
End Sub
Private Sub Form_Load()
mdlTextBox。Centen Me
Text1.Text = ”": Text2.Text = ””: Combo1。Text = "”
Dim rs As ADODB。Recordset
sqlstr = "select * from class_info"
Set rs = ExecuteSQL(sqlstr, Msg)
For i = 1 To rs。RecordCount
Combo1.AddItem rs。Fields(0)
rs。MoveNext
Next
rs。Close
End Sub
程序运行界面:
学生信息管理系统(详细设计)
登录的系统界面:
总体程序流程图:
学校
构成
系部
开始
课程
选课
成绩
构成
教师
授课
构成
班级
构成
学生
学生档案
课程名称
学时
课程信息
授课老师
登录学生档案
登录学生选课
登录学生成绩成绩
学生
选课
选课信息
查询统计
管理人员
展开阅读全文