学生档案管理系统

合集下载

学生管理系统的现状与未来发展趋势

学生管理系统的现状与未来发展趋势

学生管理系统的现状与未来发展趋势学生管理系统是一种信息化管理工具,致力于帮助学校和教育机构更好地管理学生信息、学籍档案、成绩记录等。

随着信息技术的发展和教育改革的推进,学生管理系统已经成为许多学校重要的管理工具之一。

本文将从现状与未来两个方面探讨学生管理系统的发展。

目前,学生管理系统的主要功能包括学生信息管理、学生档案管理、成绩管理和教务管理等。

学生信息管理模块用于记录学生的基本信息和联系方式,学籍档案管理模块则用于存储学生的学籍信息、违纪记录等。

成绩管理模块可以帮助教师记录和统计学生的考试成绩,教务管理模块则用于排课、选课和课程评价等。

通过学生管理系统,学校可以更加方便地管理学生信息,提高工作效率。

然而,目前学生管理系统还存在一些问题。

首先,现有学生管理系统的功能仍然较为单一,只能满足基本的信息管理需求。

例如,对于学生的综合素质评价、学生活动管理等方面的需求,学生管理系统往往无法提供相应的功能。

其次,学生管理系统的用户界面和操作流程还有待改进。

一些系统过于复杂,用户友好性较差,使得教师和学校管理人员在使用中感到困难。

此外,数据的安全性也是学生管理系统面临的挑战之一。

学生的个人信息是隐私,在管理系统中的存储和传输必须有严格的安全措施。

未来,学生管理系统将向着以下几个方向发展。

首先,功能将更加多样化,满足学校信息管理的全方位需求。

系统将提供更加综合的学生评价功能,包括学业成绩、教师评语、学生素质等方面的综合评价。

其次,用户界面和操作流程将更加人性化,方便用户使用。

学生管理系统将通过智能化技术的应用,提供更加简便、高效的操作界面和操作方式,减少人为操作的出错机会。

另外,数据的安全性也将得到更加强化,通过加密技术和访问控制机制,确保学生信息的安全和隐私保护。

此外,学生管理系统将更加注重数据的分析和利用,通过大数据分析和挖掘技术,提供更加精准的学生管理策略和个性化的学习辅导。

为了实现以上的发展趋势,学生管理系统的研发需要从以下几个方面着手。

海南省中学生综合素质档案管理系统

海南省中学生综合素质档案管理系统

海南省中学生综合素质档案管理系统引言在当今社会,随着教育改革的不断深入,人力资源的竞争日趋激烈,培养学生的综合素质已经成为中小学教育的重要任务之一。

为了更好地管理和记录学生的综合素质发展情况,海南省中学生综合素质档案管理系统应运而生。

本文将对该系统的设计和实施进行详细介绍。

一、背景分析随着经济的全球化和社会的不断进步,人才的培养已成为国家发展的重中之重。

中小学阶段是学生综合素质发展的关键时期,准确记录和评估学生的综合素质对于学生的个性发展和将来的职业规划都具有重要意义。

然而,传统的纸质档案管理方式不仅效率低下,还容易出现遗漏和丢失的情况。

因此,海南省决定开发一套中学生综合素质档案管理系统。

二、需求分析1. 数据录入:系统应具备方便快捷的数据录入功能,包括学生的基本信息、课程成绩、奖惩情况、社会实践活动等。

2. 数据存储:系统需要提供稳定可靠的数据存储功能,确保学生的档案信息能够长期保存和查询。

3. 数据查询:系统应具备灵活多样的数据查询功能,支持按照学生姓名、学号、班级等多个维度进行查询,方便管理人员和教师查看学生的综合素质档案。

4. 数据统计:系统需要提供数据统计分析功能,支持生成学生的综合素质发展报告和统计图表,为学生评价和决策提供参考依据。

5. 权限管理:系统需要具备权限管理功能,保障教师和管理人员可以根据自身需要进行档案的查看和修改,对于普通用户进行访问和操作的限制。

三、系统设计基于上述需求分析,海南省中学生综合素质档案管理系统的设计主要包括以下几个模块:1. 学生档案管理模块:该模块负责学生档案的录入、保存和查询,包括学生的基本信息、成绩、奖惩情况等。

管理员和教师可以根据需要对学生档案进行编辑和修改。

2. 综合素质评价模块:该模块用于对学生的综合素质进行评估和统计,支持生成学生的综合素质报告和统计图表,为学生个性发展提供参考信息。

3. 教师管理模块:该模块用于管理教师的信息,包括基本信息、任教课程、教学经验等。

学生档案查询系统

学生档案查询系统

学生档案查询系统摘要:高校学生档案管理是高校日常管理的一个重要组成局部,其管理效率的上下直接影响着整个学校的管理工作。

为方便学生的管理工作,遂开发此系统。

此系统包括对学生的根本信息管理,成绩管理,课程管理。

采用目前流行的Visual C++, Access数据库作为主要开发工具。

查询系统由系统用户管理模块、课程管理模块、成绩管理模块和学生的根本信息管理模块这四个模块组成,四个模块的设计及查询界面主要在详细设计中表达出来,即本论文的主要侧重点。

一、概述1. 背景介绍学生档案查询系统是一个教育单位必不可少的组成局部,它对于学校的管理来说至关重要。

在这个科学技术的不断提高,计算机科学日渐成熟,且讲究高效率的社会,人工管理文件档案的方式就显得效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

这已远远不能满足学校和学生的需求。

所以作为计算机应用的一局部,使用计算机对学生档案信息进行管理,具有着手工管理所无法比较的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、本钱低等。

这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

因此,开发这样一套软件成为很有必要的事情。

2. 系统可行性分析①经济可行性研究本系统为小型开发系统,且开发系统的目的不是到达经济收益,而主要目的是锻炼学生的动手能力,并注重小组成员之间的合作能力,到达小组成员整体水平的提高。

故在经济上此系统的开发不会受到影响。

对于开发过程中的所需的打印等费用自付。

②技术可行性研究本软件的开发在技术方面采用visual C++和Access数据库相结合的方法来实现。

使用此系统只需添置低档计算机,如果条件允许可添加打印机以便查询能方便打印成资料作为参考;对现有软件不会产生冲突,对使用的操作系统来说有很好的兼容性、稳定性。

该系统软件界面清晰,整洁。

功能一目了然,操作简单,容易上手,对于一般网络操作者都能胜任。

中小学学生学籍信息化管理系统操作方法

中小学学生学籍信息化管理系统操作方法

中小学学生学籍信息化管理系统操作方法一、引言学籍信息化管理系统是为了方便学校对学生学籍信息进行管理和查询而开发的一套应用软件系统。

通过学籍信息化管理系统,学校可以更加高效地管理学生档案、考勤记录、成绩信息等,并实现对学生学籍信息的查询、统计、分析等功能。

下面将详细介绍学生学籍信息化管理系统的操作方法。

二、系统登录和权限管理1.打开学生学籍信息化管理系统,进入系统登录界面。

2.输入用户名和密码,点击“登录”按钮进行登录。

3.根据用户权限不同,系统会自动跳转到不同的功能模块。

管理员具有最高权限,可以访问系统的所有功能模块;教师和学生只能访问与教学和个人信息相关的功能模块。

三、学生档案管理1.在学生档案管理模块中,可以进行学生档案的录入、查询和修改。

3.查询学生档案时,可以根据学生的姓名、性别、班级等信息进行查询,并显示符合条件的学生档案列表。

四、考勤管理1.在考勤管理模块中,可以查看学生的考勤记录、录入考勤信息。

2.查看学生考勤记录时,可以通过选择学生和日期范围进行查询,并显示符合条件的考勤记录列表。

3.录入考勤信息时,选择要录入的日期和班级,并通过勾选相应的学生进行考勤,包括出勤、缺勤、迟到、早退等状态。

五、成绩管理1.在成绩管理模块中,可以进行学生的成绩录入、查询和统计。

2.录入学生成绩时,选择要录入成绩的科目和考试时间,并选择班级和学生,输入相应的成绩。

3.查询学生成绩时,可以通过选择科目、考试时间、班级等条件进行查询,并显示符合条件的学生成绩列表。

4.统计学生成绩时,可以对学生的成绩进行总分、平均分、最高分、最低分等统计,以及班级和科目的成绩分析。

六、个人信息管理1.在个人信息管理模块中,教师和学生可以查看和修改自己的个人信息。

2.查看个人信息时,系统会显示当前用户的基本信息、所属班级或科目等信息。

七、系统设置和维护1.在系统设置和维护模块中,管理员可以进行系统设置和维护操作。

2.设置班级、科目、教师信息等基础数据。

最详细的学生档案管理系统

最详细的学生档案管理系统

VB高级程序开发学生档案管理系统学生档案管理系统目录一、标准模块(公共部分) (1)1:PublicVar (1)2:OPeratDataBase (1)二、窗体 (3)1:A院设置 (3)2:A系设置 (8)3:A班级设置 (14)4:B基本信息 (21)5:B家庭基本成员信息 (27)6:B学籍报告 (33)7:B学籍异动 (37)8:B学期注册 (42)9:B学生查询 (45)10:C 课程查询 (48)11:C课程分配 (51)12:C 新增课程 (55)13:D成绩单生成 (62)14:D成绩录入 (66)15:D成绩评审 (70)16:E奖惩查询 (74)17:E奖惩单生成 (77)18:E奖惩录入 (79)19:F数据库连接 (84)20:G登录 (85)21:G密码维护 (87)22:G用户管理 (89)23:学生档案管理 (94)一、标准模块(公共部分)1:PublicVarPublic MenuIndex As Integer '保存用户选择的菜单Public LoginSucceeded As Boolean '用户登录标志Public UserID As String '用户IDPublic ConnectionString As String '数据库连接字符串2:OPeratDataBasePublic Function GetConnStr() As String'得到数据库连接字符串,用户可以在此处设置连接字符串'User ID 是数据库用户ID,Password是登陆密码'Initial Catalog是数据库名,Data Source是服务器名称GetConnStr = ConnectionStringEnd FunctionPublic Function OpenConn(ByRef Conn As ADODB.Connection) As Boolean '打开数据库连接,连接成功返回true,出错时返回falseSet Conn = New ADODB.Connection'出错处理On Error GoTo ErrorHandleConn.Open GetConnStrOpenConn = TrueExit FunctionErrorHandle:MsgBox "连接数据库失败!请重新连接!"OpenConn = FalseExit FunctionEnd FunctionPublic Sub ExecuteSQL(ByVal SQL As String, ByRef msg As String)'执行SQL语句Dim Conn As ADODB.ConnectionDim sTokens() As String'出错处理On Error GoTo ErrorHandle'判断SQL语句sTokens = Split(SQL)If InStr("INSERT,DELETE,UPDA TE", UCase((sTokens(0)))) Then '打开数据库连接If OpenConn(Conn) ThenConn.Execute SQLmsg = sTokens(0) & "操作执行成功!"End IfElsemsg = "SQL语句有误:" & SQLEnd IfFinally_Exit:Set rst = NothingSet Conn = NothingExit SubErrorHandle:msg = "执行错误: " & Err.DescriptionResume Finally_ExitEnd SubPublic Function SelectSQL(ByVal SQL _As String, ByRef msg As String) As ADODB.Recordset'执行SQL语句,返回ADODB.RecordsetDim Conn As ADODB.ConnectionDim rst As ADODB.RecordsetDim sTokens() As String'出错处理On Error GoTo ErrorHandle'判断SQL语句sTokens = Split(SQL)If InStr("SELECT", UCase((sTokens(0)))) Then'打开数据库连接If OpenConn(Conn) ThenSet rst = New ADODB.Recordsetrst.CursorLocation = adUseClientrst.Open Trim$(SQL), Conn, adOpenDynamic, adLockOptimisticSet SelectSQL = rstmsg = "查询到" & rst.RecordCount & " 条记录! "End IfElsemsg = "SQL语句有误:" & SQLEnd IfFinally_Exit:Set rst = NothingSet Conn = NothingExit FunctionErrorHandle:MsgString = "查询错误: " & _Err.DescriptionResume Finally_ExitEnd FunctionPublic Function BatchSelectSQL(ByVal SQL _As String, ByRef msg As String) As ADODB.Recordset'执行SQL语句,返回批处理的ADODB.RecordsetDim Conn As ADODB.ConnectionDim rst As ADODB.RecordsetDim sTokens() As String'出错处理On Error GoTo ErrorHandle'判断SQL语句sTokens = Split(SQL)If InStr("SELECT", UCase((sTokens(0)))) Then'打开数据库连接If OpenConn(Conn) ThenSet rst = New ADODB.Recordsetrst.CursorLocation = adUseClientrst.Open Trim$(SQL), Conn, adOpenDynamic, adLockBatchOptimisticSet BatchSelectSQL = rstmsg = "查询到" & rst.RecordCount & " 条记录! "End IfElsemsg = "SQL语句有误:" & SQLEnd IfFinally_Exit:Set rst = NothingSet Conn = NothingExit FunctionErrorHandle:MsgString = "批查询错误: " & _Err.DescriptionResume Finally_ExitEnd Function二、窗体1:A院设置(1)界面(2)代码Dim rs As ADODB.RecordsetDim SQL As StringDim msg As StringDim Index As IntegerDim flag As String '判断是新增记录还是修改记录Private Sub Form_Load()Call LoadData '装载数据If rs.RecordCount > 0 ThenCall ShowData '显示数据ElseFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'控件可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd SubPrivate Function CheckData() As Boolean'检查数据的合法性Dim rst As ADODB.RecordsetDim msgt As Stringmsgt = ""'检查数据非空If Trim(txtItem(0).Text) = "" Thenmsgt = "院代码为空;"ElseIf Not Len(Trim(txtItem(0).Text)) = 2 Thenmsgt = "院代码不是2位;"End IfIf Trim(txtItem(1).Text) = "" Thenmsgt = msgt & " 院名称为空;"End IfIf Not msgt = "" ThenMsgBox (msgt)CheckData = FalseExit FunctionEnd If'检查唯一性SQL = " select * from 院信息表where 院代码='" & Trim(txtItem(0).Text) & "'"Set rst = SelectSQL(SQL, msg)If flag = "Add" And rst.RecordCount > 0 ThenMsgBox ("该院的信息已经存在,重复添加!")rst.CloseCheckData = FalseExit FunctionEnd IfCheckData = True '合法End FunctionPrivate Sub ShowData()'在文本框中显示数据If rs.RecordCount <> 0 And rs.EOF = False ThenFor Index = 0 To 6If rs.Fields(Index) <> "" ThentxtItem(Index).Text = rs.Fields(Index)ElsetxtItem(Index).Text = ""End IftxtItem(Index).Enabled = FalseNext IndexIf IsDate(Trim(txtItem(4).Text)) ThenMe.DTPicker1.Value = Trim(txtItem(4).Text) '时间控件End IfEnd IfEnd SubPrivate Sub LoadData()'装载数据Set rs = NothingSQL = " select * from 院信息表order by 院代码"Set rs = SelectSQL(SQL, msg)Set Me.DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub CmdMove_Click(Index As Integer) '移动记录Select Case IndexCase Is = 0 '移到第一条记录If Not rs.BOF Then rs.MoveFirstCase Is = 1 '移到上一条记录If rs.RecordCount <> 0 ThenIf rs.BOF = False Then rs.MovePreviousIf rs.BOF = True Then rs.MoveFirstEnd IfCase Is = 2 '移到下一条记录If rs.RecordCount <> 0 ThenIf rs.EOF = False Then rs.MoveNextIf rs.EOF = True Then rs.MoveLastEnd IfCase Is = 3 '移到最后一条记录If rs.RecordCount <> 0 ThenIf Not rs.EOF = True Then rs.MoveLastEnd IfEnd SelectIf rs.RecordCount <> 0 ThenCall ShowData '在文本框中显示数据'按钮可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = TrueCmdCancel.Enabled = False: CmdSave.Enabled = FalseElse'按钮可用性CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = FalseCmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd IfEnd SubPrivate Sub CmdAdd_Click()'清空文本框,文本框可用For Index = 0 To 6txtItem(Index).Text = ""txtItem(Index).Enabled = TrueNext Index'设置标志flagflag = "Add"'设置时间控件txtItem(4).Text = Me.DTPicker1.Value'所有移动按钮不可用For Index = 0 To 3CmdMove(Index).Enabled = FalseNext Index'添加、修改、删除按钮不可用,取消、保存按钮可用CmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = FalseCmdCancel.Enabled = True: CmdSave.Enabled = TrueEnd SubPrivate Sub CmdModify_Click()'修改操作If rs.RecordCount > 0 Then'文本框可用,院代码不可以修改For Index = 1 To 6txtItem(Index).Enabled = TrueNext IndextxtItem(0).Enabled = False'设置标志flagflag = "Modify"'移动控件不可用For Index = 0 To 3CmdMove(Index).Enabled = FalseNext Index'添加、修改、删除按钮不可用,取消、保存按钮可用CmdCancel.Enabled = True: CmdSave.Enabled = TrueCmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = False ElseMsgBox ("没有可以修改的数据!")End IfEnd SubPrivate Sub CmdDelete_Click()'删除操作On Error GoTo ErrMsgIf rs.RecordCount > 0 Thenmsg = MsgBox("删除该条记录吗?", vbYesNo)If msg = vbYes Thenrs.DeleteCall LoadData '重新装载数据'清空文本框、并不可用For Index = 0 To 6txtItem(Index).Text = ""txtItem(Index).Enabled = FalseNext Index'所有移动控件不可用If rs.RecordCount = 0 ThenFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'按钮可用性处理CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = TrueCmdSave.Enabled = False: CmdCancel.Enabled = FalseMsgBox ("成功删除的数据!")End IfElseMsgBox ("没有可删除的数据!")End IfExit SubErrMsg:MsgBox Err.Description, vbExclamation, "出错"End SubPrivate Sub cmdCancel_Click()'取消操作Call ShowData'所有移动控件可用For Index = 0 To 3CmdMove(Index).Enabled = TrueNext Index'修改、删除、添加按钮可用,保存和取消按钮不可用CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = TrueCmdSave.Enabled = False: CmdCancel.Enabled = FalseEnd SubPrivate Sub CmdSave_Click()On Error GoTo ErrMsgIf Not CheckData Then Exit Sub '如果数据不合法就退出If flag = "Modify" Then '如果是修改数据msg = MsgBox("您确实要修改这条数据吗?", vbYesNo)If msg = vbYes ThenFor Index = 0 To 6If txtItem(Index).Text <> "" Then rs.Fields(Index) = txtItem(Index).TexttxtItem(Index).Enabled = FalseNext IndexElseExit SubEnd IfElseIf flag = "Add" Then '如果是添加新数据rs.AddNewFor Index = 0 To 6If txtItem(Index).Text <> "" Then rs.Fields(Index) = txtItem(Index).Text Next IndexEnd If'更新数据rs.Update'移动控件可用For Index = 0 To 3CmdMove(Index).Enabled = TrueNext IndexCmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = FalseIf flag = "Add" ThenMsgBox ("成功添加数据!")ElseMsgBox ("成功更新数据!")End IfCall LoadData '重新装载数据'定位到添加或修改记录If rs.RecordCount <> 0 Thenrs.MoveFirstrs.Find ("院代码='" & Trim(txtItem(0).Text) & "'")If Not rs.EOF Then Call ShowData '重新装载数据End IfExit SubErrMsg:MsgBox Err.Description, vbExclamation, "出错"End SubPrivate Sub DTPicker1_CloseUp() '得到日期txtItem(4).Text = Me.DTPicker1.ValueEnd SubPrivate Sub CmdExit_Click()'退出操作学生档案管理.Enabled = Truers.CloseUnload MeEnd SubPrivate Sub Form_Unload(Cancel As Integer)'退出操作学生档案管理.Enabled = TrueUnload MeEnd Sub2:A系设置(1)界面(2)代码Dim rs As ADODB.RecordsetDim SQL As StringDim msg As StringDim Index As IntegerDim flag As String '判断是新增加记录还是修改记录Private Function CheckData() As Boolean'检查数据的合法性Dim rst As ADODB.RecordsetDim msgt As Stringmsgt = ""'检查数据非空性If Trim(txtItem(0).Text) = "" Thenmsgt = "系代码为空;"ElseIf Not Len(Trim(txtItem(0).Text)) = 4 Thenmsgt = "系代码不是4位;"ElseIf Not Left(Trim(txtItem(0).Text), 2) = Left(Trim(CboQuery.Text), 2) Then msgt = "系代码错误;"End IfIf Trim(txtItem(1).Text) = "" Thenmsgt = msgt & " 系名称为空;"End IfIf Not msgt = "" ThenMsgBox (msgt)CheckData = FalseExit FunctionEnd If'检查唯一性SQL = " select * from 系信息表where 系代码='" & Trim(txtItem(0).Text) & "'"Set rst = SelectSQL(SQL, msg)If flag = "Add" And rst.RecordCount > 0 ThenMsgBox ("该系的信息已经存在,重复添加!")rst.CloseCheckData = FalseExit FunctionEnd IfCheckData = True '合法End FunctionPrivate Sub ShowData()'在文本框中显示数据If rs.RecordCount <> 0 ThenFor Index = 0 To 7If rs.Fields(Index) <> "" ThentxtItem(Index).Text = rs.Fields(Index)ElsetxtItem(Index).Text = ""End IftxtItem(Index).Enabled = FalseNext IndexIf IsDate(Trim(txtItem(5).Text)) ThenDTPicker1.Value = Trim(txtItem(5).Text) '时间控件End IfEnd IfEnd SubPrivate Sub LoadData()'装载数据Dim strWhere As StringIf CboQuery.ListCount > 0 ThenstrWhere = " where 院代码='" & Left(Trim(CboQuery.Text), 2) & "'"Set rs = NothingSQL = " select * from 系信息表" & strWhere & " order by 系代码"Set rs = SelectSQL(SQL, msg)Set Me.DataGrid1.DataSource = rsMe.DataGrid1.RefreshFrame1(1).Enabled = TrueElseMsgBox ("请先创建上级单位!")Frame1(1).Enabled = FalseEnd IfEnd SubPrivate Sub CboQuery_Click()txtItem(4).Text = Left(Trim(CboQuery.Text), 2)End SubPrivate Sub CmdQuery_Click()Call LoadData '重新装载数据If rs.RecordCount > 0 ThenCall ShowData '显示信息ElseFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'控件可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdCancel.Enabled = False: CmdSave.Enabled = FalsePrivate Sub Form_Load()'初始化ComboBoxDim rst As ADODB.RecordsetDim strItem As StringSQL = " select 院代码,院名称from 院信息表order by 院代码"Set rst = SelectSQL(SQL, msg)If rst.RecordCount > 0 ThenDo While Not rst.EOFstrItem = rst.Fields(0) & " " & rst.Fields(1)CboQuery.AddItem (strItem)rst.MoveNextLooprst.CloseCboQuery.ListIndex = 0ElseMsgBox ("请先创建院信息!") '如果没有院信息不能使用Frame1(0).Enabled = FalseFrame1(1).Enabled = FalseExit SubEnd IfCall LoadData '重新装载数据If rs.RecordCount > 0 ThenCall ShowData '显示数据ElseFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'控件可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = TrueCmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd SubPrivate Sub CmdMove_Click(Index As Integer) '移动记录Select Case IndexCase Is = 0 '移到第一条记录If Not rs.BOF Then rs.MoveFirstCase Is = 1 '移到上一条记录If rs.RecordCount <> 0 ThenIf rs.BOF = False Then rs.MovePreviousIf rs.BOF = True Then rs.MoveFirstEnd IfCase Is = 2 '移到下一条记录If rs.RecordCount <> 0 ThenIf rs.EOF = False Then rs.MoveNextIf rs.EOF = True Then rs.MoveLastEnd IfCase Is = 3 '移到最后一条记录If rs.RecordCount <> 0 ThenIf Not rs.EOF = True Then rs.MoveLastEnd IfEnd SelectIf rs.RecordCount <> 0 ThenCall ShowData '在文本框中显示数据'按钮可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = TrueCmdCancel.Enabled = False: CmdSave.Enabled = False'按钮可用性CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = FalseCmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd IfEnd SubPrivate Sub CmdAdd_Click()'清空文本框,文本框可用For Index = 0 To 7txtItem(Index).Text = ""txtItem(Index).Enabled = TrueNext IndexCboQuery.Enabled = False 'ComboBox不可用'设置标志flagflag = "Add"txtItem(5).Text = Me.DTPicker1.Value '设置日期txtItem(0).Text = Left(Trim(CboQuery.Text), 2)txtItem(0).SetFocustxtItem(4).Text = Left(Trim(CboQuery.Text), 2)'所有移动按钮不可用For Index = 0 To 3CmdMove(Index).Enabled = FalseNext Index'添加、修改、删除按钮不可用,取消、保存按钮可用CmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = FalseCmdCancel.Enabled = True: CmdSave.Enabled = TrueEnd SubPrivate Sub CmdModify_Click()'修改操作If rs.RecordCount > 0 Then'文本框可用,系代码不可以修改For Index = 1 To 7txtItem(Index).Enabled = TrueNext IndextxtItem(0).Enabled = FalseCboQuery.Enabled = False 'ComboBox 不可用'设置标志flagflag = "Modify"'移动控件不可用For Index = 0 To 3CmdMove(Index).Enabled = FalseNext Index'添加、修改、删除按钮不可用,取消、保存按钮可用CmdCancel.Enabled = True: CmdSave.Enabled = TrueCmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = False ElseMsgBox ("没有可以修改的数据!")End IfEnd SubPrivate Sub CmdDelete_Click()'删除操作On Error GoTo ErrMsgIf rs.RecordCount > 0 Thenmsg = MsgBox("删除该条记录吗?", vbYesNo)If msg = vbYes Thenrs.DeleteCall LoadData '重新装载数据'清空文本框、并不可用For Index = 0 To 7txtItem(Index).Text = ""txtItem(Index).Enabled = FalseNext Index'所有移动控件不可用If rs.RecordCount = 0 ThenFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'按钮可用性处理CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = TrueCmdSave.Enabled = False: CmdCancel.Enabled = FalseMsgBox ("成功删除的数据!")End IfElseMsgBox ("没有可删除的数据!")End IfExit SubErrMsg:MsgBox 不能删除, vbExclamation, "出错"End SubPrivate Sub cmdCancel_Click()'取消操作Call ShowData'所有移动控件可用For Index = 0 To 3CmdMove(Index).Enabled = TrueNext IndexCboQuery.Enabled = True 'ComboBox可用'修改、删除、添加按钮可用,保存和取消按钮不可用CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = TrueCmdSave.Enabled = False: CmdCancel.Enabled = FalseEnd SubPrivate Sub CmdSave_Click()On Error GoTo ErrMsgIf Not CheckData Then Exit Sub '如果数据不合法退出If flag = "Modify" Then '如果是修改数据msg = MsgBox("您确实要修改这条数据吗?", vbYesNo)If msg = vbYes ThenFor Index = 0 To 7If txtItem(Index).Text <> "" Then rs.Fields(Index) = txtItem(Index).Text Next IndexElseExit SubEnd IfElseIf flag = "Add" Then '如果是添加新数据rs.AddNewFor Index = 0 To 7If txtItem(Index).Text <> "" Then rs.Fields(Index) = txtItem(Index).Text Next IndexEnd If'更新数据rs.Update'移动控件可用For Index = 0 To 3CmdMove(Index).Enabled = TrueNext IndexFor Index = 0 To 7txtItem(Index).Enabled = FalseNext IndexCboQuery.Enabled = True 'ComboBox可用CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = FalseIf flag = "Add" ThenMsgBox ("成功添加数据!")ElseMsgBox ("成功更新数据!")End IfCall LoadData '重新装载数据'定位到添加或修改记录If rs.RecordCount <> 0 Thenrs.MoveFirstrs.Find ("系代码='" & Trim(txtItem(0).Text) & "'")If Not rs.EOF Then Call ShowData '重新显示数据End IfExit SubErrMsg:MsgBox Err.Description, vbExclamation, "出错"End SubPrivate Sub DTPicker1_CloseUp() '得到日期txtItem(5).Text = Me.DTPicker1.ValueEnd SubPrivate Sub CmdExit_Click()'退出操作学生档案管理.Enabled = Truers.CloseUnload MeEnd SubPrivate Sub Form_Unload(Cancel As Integer)'退出操作学生档案管理.Enabled = TrueUnload MeEnd Sub3:A班级设置(1)界面(2)代码Dim rs As ADODB.RecordsetDim SQL As StringDim msg As StringDim Index As IntegerDim flag As String '判断是新增记录还是修改记录Private Sub SelectData()'初始化系ComboBoxDim rst As ADODB.RecordsetDim strItem As StringSQL = " select 系代码,系名称from 系信息表where 院代码='"SQL = SQL & Left(Trim(CboQuery(0).Text), 2) & "' order by 系代码"Set rst = SelectSQL(SQL, msg)CboQuery(1).ClearIf rst.RecordCount > 0 ThenDo While Not rst.EOFstrItem = rst.Fields(0) & " " & rst.Fields(1)CboQuery(1).AddItem (strItem)rst.MoveNextLooprst.CloseCboQuery(1).ListIndex = 0ElseFrame1(1).Enabled = FalseExit SubEnd IfEnd SubPrivate Function CheckData() As Boolean'检查数据的合法性Dim rst As ADODB.RecordsetDim msgt As Stringmsgt = ""'检查数据非空If Trim(txtItem(0).Text) = "" Thenmsgt = "班号为空;"ElseIf Not Len(Trim(txtItem(0).Text)) = 6 Thenmsgt = "班号不是6位;"ElseIf Not Left(Trim(txtItem(0).Text), 4) = Left(Trim(CboQuery(1).Text), 4) Then msgt = "班号错误;"End IfIf Trim(txtItem(1).Text) = "" Thenmsgt = msgt & " 班级名称为空;"End IfIf Not msgt = "" ThenMsgBox (msgt)CheckData = FalseExit FunctionEnd If'检查唯一性SQL = " select * from 班级信息表where 班号='" & Trim(txtItem(0).Text) & "'"Set rst = SelectSQL(SQL, msg)If flag = "Add" And rst.RecordCount > 0 ThenMsgBox ("该班级的信息已经存在,重复添加!")rst.CloseCheckData = FalseExit FunctionEnd IfCheckData = True '合法End FunctionPrivate Sub ShowData()'在文本框中显示数据If rs.RecordCount <> 0 ThenFor Index = 0 To 8If rs.Fields(Index) <> "" ThentxtItem(Index).Text = rs.Fields(Index)ElsetxtItem(Index).Text = ""End IftxtItem(Index).Enabled = FalseNext IndexIf IsDate(Trim(txtItem(3).Text)) ThenDTPicker1.Value = Trim(txtItem(3).Text) '时间控件End IfEnd IfEnd SubPrivate Sub LoadData()'装载数据Dim strWhere As StringIf CboQuery(0).ListCount > 0 And CboQuery(1).ListCount > 0 ThenstrWhere = " where 系代码='" & Left(Trim(CboQuery(1).Text), 4) & "'"Set rs = NothingSQL = " select * from 班级信息表" & strWhere & " order by 班号"Set rs = SelectSQL(SQL, msg)Set Me.DataGrid1.DataSource = rsMe.DataGrid1.RefreshFrame1(1).Enabled = TrueElseMsgBox ("请先创建上级单位!")Frame1(1).Enabled = FalseEnd IfEnd SubPrivate Sub CboQuery_Click(Index As Integer)If Index = 0 ThenCall SelectData '得到系列表ElseIf Index = 1 ThenIf CboQuery(1).ListCount > 0 ThentxtItem(2).Text = Left(Trim(CboQuery(1).Text), 4)Label4.Caption = "系代码:" & Left(Trim(CboQuery(1).Text), 4) End IfEnd IfEnd SubPrivate Sub CmdQuery_Click()Call LoadData '重新装载数据If rs.RecordCount > 0 ThenCall ShowData '显示数据ElseFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'控件可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd SubPrivate Sub Form_Load()'初始化ComboBoxDim rst As ADODB.RecordsetDim strItem As StringSQL = " select 院代码,院名称from 院信息表order by 院代码"Set rst = SelectSQL(SQL, msg)If rst.RecordCount > 0 ThenDo While Not rst.EOFstrItem = rst.Fields(0) & " " & rst.Fields(1)CboQuery(0).AddItem (strItem)rst.MoveNextLooprst.CloseCboQuery(0).ListIndex = 0ElseMsgBox ("请先创建院信息!") '如果没有院信息不能使用Frame1(0).Enabled = FalseFrame1(1).Enabled = FalseFrame2.Enabled = FalseExit SubEnd IfCall SelectData '得到系列表Call LoadData '重新装载数据If Not Frame1(1).Enabled Then Exit SubIf rs.RecordCount > 0 ThenCall ShowData '显示数据ElseFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'控件可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = TrueCmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd SubPrivate Sub CmdMove_Click(Index As Integer)'移动记录Select Case IndexCase Is = 0 '移到第一条记录If Not rs.BOF Then rs.MoveFirstCase Is = 1 '移到上一条记录If rs.RecordCount <> 0 ThenIf rs.BOF = False Then rs.MovePreviousIf rs.BOF = True Then rs.MoveFirstEnd IfCase Is = 2 '移到下一条记录If rs.RecordCount <> 0 ThenIf rs.EOF = False Then rs.MoveNextIf rs.EOF = True Then rs.MoveLastEnd IfCase Is = 3 '移到最后一条记录If rs.RecordCount <> 0 ThenIf Not rs.EOF = True Then rs.MoveLastEnd IfEnd SelectIf rs.RecordCount <> 0 ThenCall ShowData '在文本框中显示数据'按钮可用性CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = TrueCmdCancel.Enabled = False: CmdSave.Enabled = FalseElse'按钮可用性CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = FalseCmdCancel.Enabled = False: CmdSave.Enabled = FalseEnd IfEnd SubPrivate Sub CmdAdd_Click()'清空文本框,文本框可用For Index = 0 To 8txtItem(Index).Text = ""txtItem(Index).Enabled = TrueNext IndexCboQuery(0).Enabled = False 'ComboBox不可用CboQuery(1).Enabled = False 'ComboBox不可用'设置标志flagflag = "Add"txtItem(3).Text = Me.DTPicker1.Value '设置日期txtItem(0).Text = Left(Trim(CboQuery(1).Text), 4)txtItem(0).SetFocustxtItem(2).Text = Left(Trim(CboQuery(1).Text), 4)'所有移动按钮不可用For Index = 0 To 3CmdMove(Index).Enabled = FalseNext Index'添加、修改、删除按钮不可用,取消、保存按钮可用CmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = FalseCmdCancel.Enabled = True: CmdSave.Enabled = TrueEnd SubPrivate Sub CmdModify_Click()'修改操作If rs.RecordCount > 0 Then'文本框可用,班号不可以修改For Index = 1 To 8txtItem(Index).Enabled = TrueNext IndextxtItem(0).Enabled = FalseCboQuery(0).Enabled = False 'ComboBox 不可用CboQuery(1).Enabled = False 'ComboBox 不可用'设置标志flagflag = "Modify"'移动控件不可用For Index = 0 To 3CmdMove(Index).Enabled = FalseNext Index'添加、修改、删除按钮不可用,取消、保存按钮可用CmdCancel.Enabled = True: CmdSave.Enabled = TrueCmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = False ElseMsgBox ("没有可以修改的数据!")End IfEnd SubPrivate Sub CmdDelete_Click()'删除操作On Error GoTo ErrMsgIf rs.RecordCount > 0 Thenmsg = MsgBox("删除该条记录吗?", vbYesNo)If msg = vbYes Thenrs.DeleteCall LoadData '重新装载数据'清空文本框、并不可用For Index = 0 To 8txtItem(Index).Text = ""txtItem(Index).Enabled = FalseNext Index'所有移动控件不可用If rs.RecordCount = 0 ThenFor Index = 0 To 3CmdMove(Index).Enabled = FalseNext IndexEnd If'按钮可用性处理CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = TrueCmdSave.Enabled = False: CmdCancel.Enabled = FalseMsgBox ("成功删除的数据!")End IfElseMsgBox ("没有可删除的数据!")End IfExit SubErrMsg:MsgBox Err.Description, vbExclamation, "出错"End SubPrivate Sub cmdCancel_Click()'取消操作Call ShowData'所有移动控件可用For Index = 0 To 3CmdMove(Index).Enabled = TrueNext IndexCboQuery(0).Enabled = True 'ComboBox可用CboQuery(1).Enabled = True 'ComboBox可用'修改、删除、添加按钮可用,保存和取消按钮不可用CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = FalseEnd SubPrivate Sub CmdSave_Click()On Error GoTo ErrMsg '出错处理If Not CheckData Then Exit Sub '如果数据不合法退出If flag = "Modify" Then '如果是修改数据msg = MsgBox("您确实要修改这条数据吗?", vbYesNo)If msg = vbYes ThenFor Index = 0 To 8If txtItem(Index).Text <> "" Then rs.Fields(Index) = txtItem(Index).TextNext IndexElseExit SubEnd IfElseIf flag = "Add" Then '如果是添加新数据rs.AddNewFor Index = 0 To 8If txtItem(Index).Text <> "" Then rs.Fields(Index) = txtItem(Index).Text Next IndexEnd If'更新数据rs.Update'移动控件可用For Index = 0 To 3CmdMove(Index).Enabled = TrueNext IndexFor Index = 0 To 8txtItem(Index).Enabled = FalseNext IndexCboQuery(0).Enabled = True 'ComboBox可用CboQuery(1).Enabled = True 'ComboBox可用CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = FalseIf flag = "Add" ThenMsgBox ("成功添加数据!")ElseMsgBox ("成功更新数据!")End IfCall LoadData '重新装载数据'定位到添加或修改记录If rs.RecordCount <> 0 Thenrs.MoveFirstrs.Find ("班号='" & Trim(txtItem(0).Text) & "'")If Not rs.EOF Then Call ShowData '重新显示数据End IfExit SubErrMsg:MsgBox Err.Description, vbExclamation, "出错"End Sub。

学生学籍档案管理系统实训报告

学生学籍档案管理系统实训报告

C#课程实训报告项目组:学生学籍档案管理系统专业:计算机软件技术学院:软件职业技术学院指导教师:王大亮闻喆实训时间:2013年6月24日-2013年7月12日软件职业技术学院CCUTSOFT学生学籍档案管理系统系统第一部分团队构成及分工第二部分系统开发进度计划第三部分需求分析第四部分概要设计第五部分详细设计第六部分系统实现第七部分测试第八部分代码清单第九部分参考文献第十部分实训总结目录1.团队构成及分工 (1)2. 系统开发进度计划 (2)3. 需求分析 (3)导言 (3)3.1.1目的 (3)3.1.2背景 (3)3.1.3定义及缩写 (3)3.1.4参考文献 (3)系统定义 (4)3.2.1项目来源及背景 (4)3.2.2用户特点 (4)3.2.3项目目标 (4)3.2.4应用环境 (4)功能需求 (4)3.3.1角色定义 (5)3.3.2系统用例图 (5)3.3.3用例描述 (2)性能需求 (4)3.4.1界面需求 (4)3.4.2响应时间需求 (4)3.4.3可靠性需求 (4)3.4.4开发性需求 (4)3.4.5可扩展性需求 (4)3.4.6系统安全需求 (5)4.概要设计 (1)导言 (1)4.1.1目的 (1)4.1.2定义及缩写 (1)4.1.3参考文献 (1)功能设计 (1)4.2.1功能层次设计 (1)4.2.2登录模块 (1)4.2.3用户操作模块 (1)界面流程 (1)数据设计 (1)4.4.1 数据概念结构设计 (1)4.4.2数据逻辑结构设计 (2)4.4.3数据物理结构设计 (4)5.详细设计 (1)导言 (1)5.1.1目的 (1)5.1.2定义及缩写 (1)5.1.3参考文献 (1)界面设计 (1)5.2.1未登录模块界面设计 (1)5.2.2登录模块界面设计 (2)5.2.3角色处理模块详细设计 (2)功能详细设计 (3)5.3.1模块详细设计 (3)6. 系统实现 (1)导言 (1)6.1.1目的 (1)6.1.2缩写及定义 (1)6.1.3参考文献 (1)编码格式规范 (1)6.2.1缩进规则 (1)6.2.2断行规则 (1)命名规范 (2)6.3.1控件 (2)6.3.2类/接口 (2)6.3.3方法 (2)6.3.4变量/常量 (2)注释规范 (2)添加用户测试 (4)学生信息录入测试 (6)查询测试 (7)8.代码清单 (9)9.参考文献 (1)10.实训总结 (1)1.团队构成及分工职能成员项目角色任务分工成绩签字组长王浩然总设计需求分析与实现组员黄树言成员数据管理刘鑫成员界面设计张宝岩参谋测试逄金桥成员测试李浩男成员测试指导教师签字:年月日2. 系统开发进度计划序号任务名称开始时间完成时间持续时间1 需求分析3天2 程序设计1天3 程序开发10天4 程序测试修改2天5 文档报告3天3. 需求分析导言3.1.1 目的为了方便学生档案管理人员的管理,减少人力资源的浪费,开发了这个软件以便管理人员提高工作效率和工作人员工作方便快捷,这个项目的小组制作一方面提高我们团队合作的能力,另一方面可以提高我们对于C#的学习能力,从而在以后的学习生活以至于工作之中有一小点工作的能力与经验.本文档的预期读者是:开发人员:王浩然刘鑫张宝岩黄树言李浩男逄金桥项目管理人员:王浩然刘鑫等测试人员:王浩然黄树言等3.1.2 背景系统在vs与数据库软件的支持下完成并运行。

学生健康档案管理系统设计报告

学生健康档案管理系统设计报告

学生健康档案管理系统设计报告学生健康档案管理系统设计报告一、项目背景随着互联网技术的发展,越来越多的学校开始采用在线教育平台和信息化管理系统进行学生管理,这不仅为学校提供了更加高效、便捷的管理方式,也大大提升了学生的学习效率和管理效果。

然而,学校在处理学生健康档案方面还比较薄弱,一些学生的健康档案管理工作没有有效地进行。

为了提高学校管理效率和学生健康状况的监测,需要开发一个学生健康档案管理系统。

二、系统设计1.系统需求分析(1)系统目标本系统主要是用于学校管理学生健康信息,监测学生的身体状况、疾病情况和疫苗接种情况等。

(2)系统功能模块本系统分为以下几个模块:1. 学生信息管理模块:主要是用于管理学生基本信息和家庭联系人等信息。

2. 健康档案管理模块:主要是管理学生健康档案信息,包括身高、体重、体温、疾病史、药物过敏史、手术史等。

3. 健康评估模块:主要是基于学生的身体指标,计算出学生体质指数、体脂率、血糖水平等,并给出相应的评估结果。

4. 疫苗管理模块:主要是用于管理学生的疫苗接种情况。

(3)系统开发技术本系统采用B/S架构,基于PHP语言、MySQL数据库开发。

2.系统详细设计(1)系统架构设计本系统采用B/S架构,前端采用HTML、CSS、jQuery和Bootstrap框架,后端采用PHP语言,并采用MySQL数据库存储数据。

系统界面简洁明了,易于操作。

(2)数据库设计本系统数据库分为以下几个表:1. 学生信息表(student_info):存储学生基本信息,包括学号、姓名、性别、出生日期、班级、家庭地址、联系电话等。

2. 健康档案表(health_record):存储学生健康档案信息,包括身高、体重、视力、听力、疾病史、药物过敏史、手术史等。

3. 体质指数表(BMI):存储学生体质指数信息,包括学号、身高、体重、BMI值、评估结果等。

4. 疫苗接种表(vaccine):存储学生疫苗接种信息,包括学号、疫苗名称、接种时间、接种地点等。

学生信息管理系统毕业论文

学生信息管理系统毕业论文

前言学生档案管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,对于前者要求建立起数据库一致性和完整性、数据安全性好的库。

而对于后者则要求应用程序功能完备,易使用等特点。

经过分析,使我们使用易于与数据库连接的Microsoft Visual Basic 6.0开发工具,利用其提供的各种面向对象的开发工具,尤其是数据库窗口这一功能强大而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原形,然后,对初始原型系统进行需求分析,不断修正和改进,直到形成用户满意的可行系统。

学生档案管理系统是每个学校教育环节不可缺少的一部分,它的内容对学校的决策者和管理者来说至关重要,所以该系统应该能够为用户提供充足的信息和快捷的查询手段。

但一直以来人们使用传统人工方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不便。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,他已进入人类社会的各个领域并发挥着越来越重要的作用。

早期的校园网络、如今的web宽带网都为我们共享数据提供了前所未有的方便,由此,建立高性能的学生档案管理系统,作为计算机应用的一部分,使用计算机对学生信息管理,具有手工管理无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,这些优点能够极大的提高学生档案管理的效率,也是科学化、正规化的体现。

因此,开发这样的软件系统是很必要的。

摘要学生档案管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的库。

而对于后者则要求应用程序功能完备,易使用等特点。

经过分析,我们使用MICROSOFT公司的VISUAL BASIC6.0开发工具,以MICROSOFT SQL SERVER数据库作为系统的后台操作,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库课程设计报告题目:学生档案管理系统姓名:陈建强学校:仰恩大学专业:计算机科学与技术学号:110920080031班级: 080901完成日期:2012-3-16学生档案管理系统一、学生档案管理系统概述学生档案管理系统是用来管理学生的档案信息。

本系统前台开发工具使用Visual Basic,后台数据库使用SQL Server 2000,采用ADO数据访问技术,并将每个数据库表的字段和操作封装到类中,从而成功地将面向对象的程序设计思想应用到数据库应用程序设计中。

二、系统分析与总体设计1、系统需求分析学生档案管理系统的用户是负责学籍管理的教师,本系统包括院系管理、学生基本信息管理、学生照片管理、学生奖惩管理、休学及调转管理等主要功能,具体功能如下:院系信息的添加、修改、删除和查询。

此功能为学生档案的分类管理提供依据。

学生基本信息的添加、修改、删除和查询。

学生教育经历信息的添加、修改、删除和查询。

学生奖励和处罚信息管理。

学生学籍变动信息管理,包括休学和调转管理。

2、系统体系结构设计根据需求分析中总结的用户需求设计系统的体系结构。

系统功能模块示意图如图2.1所示。

在功能模块示意图的树状结构中,每一个叶结点都是一个最小的功能模块。

每一个功能模块都需要针对不同的表完成相同的数据库操作,即添加记录、修改记录、以及查询显示记录信息。

图2.1学生档案管理系统功能模块示意图在本系统中,可以把功能模块分为以下3功能集合来描述。

1、基本信息管理功能集合包括院系信息管理和学生信息管理等功能模块。

关系如下图所示:学生档案管理系统院系信息管理学生信息管理学生奖惩管理学生学籍管理学生基本信息管理学生照片信息管理学生主要教育经历管理针对各个模块不同的表实现添加记录、修改记录、删除记录以及查询显示记录等功能退学/休学管理转学/调班管理2、学籍及考核管理功能集合包括学籍管理和奖惩管理模块。

关系如下图所示:3、用户管理及权限控制功能集合包括用户信息管理、权限控制等模块。

在系统初始化时,有两个默认的用户。

系统管理员用户为Admin,普通用户为Users ,默认密码均为12345。

Admin 用户可以创建用户、修改用户信息以及删除用户信息以及删除用户;普通用户则只能修改自己的用户名和密码。

用户管理功能模块的关系如下图:提供学生数据提供学生数据提供院系数据院系信息管理学生基本信息管理学生照片管理学生主要教育经历管理学生基本信息管理学生学籍管理学生奖惩管理系统用户信息管理A dm in 用户普通用户修改Adm in 用户的密码创建、修改和删除普通用户信息修改自身的用户名和密码三、数据库结构设计及实现本系统的数据库StudentFiles包含6个表,即院系班级表Classes、学生基本信息表Students、学生教育经历记录表Experience、学生奖惩表Evaluation、学生学籍变动表Change和用户信息表Users。

(1)院系班级表Classes,保存学校院系班级的信息。

采用树状结构来管理院系数据。

表结构如表3.1所示。

表3 .1 Classes表的结构编号字段名数据类型长度描述1 Class_id int 院系编号,主键2 Class_Name Varchar 40 院系名称3 UpperId int 上级院系编号(2)学生基本信息表Students,保存学生的基本信息。

表结构如表3.2所示。

表3.2 Students表的结构编号字段名数据类型长度描述1 Stuent_Id int 学生编号,主键2 Student_Name Varchar 50 姓名3 Phone imgae 照片4 Sex char 2 性别5 Nationality varchar 40 民族6 Birth varchar 20 生日7 Family_Place varchar 60 籍贯8 Id_Card varchar 20 身份证号9 BadgeID varchar 40 学生证号10 Home_phone varchar 30 家庭电话11 Residence varchar 100 居住地址12 Postcode varchar 10 邮政编号13 InDate varchar 20 入校日期14 Class_Id int 所在院系编号15 Title varchar 20 职务16 Memo varchar 200 备注17 Fillin_Time varchar 20 填表时间(3)学生教育经历记录表Experienc,保存学生教育经历的基本信息。

结构如表3.3所示。

表3.3 Experience表的结构编号字段名数据类型长度描述1 ExpId int 编号,主键2 Student_Id int 学生编号3 Start_Date char 10 开始日期4 End_Date char 10 终止日期5 School varchar 50 学校单位名称6 Title varchar 20 职务(4)学生奖惩表Evaluation,保存学生奖励和处惩表信息。

结构如表 3.4所示。

表3.4 Evaluation表的结构编号字段名数据类型长度描述1 EvaId int 奖惩记录编号,主键2 EvaDate char 10 奖惩日期3 Student_Id int 学生编号4 EvaType bit 奖惩类型5 Memo varchar 200 奖惩说明(5)学生学籍变动表Change,保存学生学籍变动的信息。

结构如表3.5所示。

表3.5 Change表的结构编号字段名数据类型长度描述1 ChangId int 学籍变动编号,主键2 Student_Id int 学生编号3 ChangeType tinyint 学籍变动类型4 ChangeDate char 10 学籍变动日期5 OriClass int 原班级编号6 NewSchool varchar 50 转入学校名称7 NewClaww int 转入班级8 Reason varchar 200 学籍变动原因9 Memo varchar 200 备注(6)用户信息表Users,保存系统用户信,结构如表3.6所示。

表3.6 Users表的结构编号字段名数据类型长度描述1 Users char 10 用户名,主键2 UserPwd char 10 密码四、设计工程框架本系统工程使用到的模块及其内容描述如下:1、工程中的模块Const模块:用来管理工程中的全局常量。

DbFunc模块:用来管理与数据库操作相关的函数,例如连接数据库、断开与数据库的连接等。

ImageFunc模块:用来管理与图像文件存储有关的访问数据库函数。

GeneralFunc模块:用来管理通用的用户自定义函数。

V ariable 模块:用来管理工程中的全局变量,包括全局数组和全局对象。

2、添加类模块本工程使用类来管理数据库中的每个表,类的成员变量对应表中的每个列,类的成员函数则实现对表的各种操作,例如添加、修改、删除和读取数据等。

在应用程序目录下创建Classes目录,用来存放类模块文件。

3、数据库连接字符串Public Const conn As String= "Provider=SQLOLEDB.1;Password=sa;UserID=sa;Initial Catalog=StudentFiles;Data Source=localhost;"Provider 数据提供者。

User ID 用户名。

Password 用户密码。

Initial Catalog 数据库名称。

Data Source 指定数据源所在的计算机地址。

五、前台界面设计与实现当系统运行时,首先会看到登录窗体,对用户的身份进行认证。

如果需要对普通用户进行管理,则使用Admin用户登录;否则使用Users用户登录。

登录成功后,将显示系统主界面。

1、登录窗体的名称为FrmLogin,界面布局如下:2、主界面窗体的名称为FrmMain。

运行界面如下:说明:整个操作界面由基本信息管理、学籍和考核管理、系统用户管理,退出系统等组成。

3、院系信息编辑模块界面布局如下:(1)添加、修改院系或班级界面如下:(2)删除院系或班级界面如下4、学生基本信息管理模块界面如下:(1)添加学生、修改资料、删除学生的界面如下:(2)学生教育经历的界面如下:5、学籍管理模块界面如下:说明:选择类型包括:退学、休学、转学、调班。

(1)添加、修改的界面如下:6、奖惩信息管理模块界面如下:说明:选择类型包括:奖励、处罚。

(1)添加、修改的界面如下:7、用户信息管理模块界面如下:六、系统测试系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析、系统设计和实施的最后复查,并将测试的实际输出结果与预期结果相比较从而发现系统存在的问题与不完善之处。

1、测试步骤以学生基本信息添加测试为例进行介绍。

(1)学生基本信息添加测试登录成功后点击菜单栏中的“基本信息管理”,在下拉菜单中选择“基本信息添加”,在弹出的对话框中依次填入学生的具体相关信息,再点击“确定”按钮,即把学生的基本信息添加成功。

打开“基本信息管理”菜单下的“基本信息浏览”,按照一定的限制条件找到刚才添加的学生基本信息,即学生基本信息添加成功。

反复添加测试两次,系统添加运行正常。

2、测试结果经测试,系统己达到系统需求分析要求。

系统操作方便、简易,有较好用户交互界面;系统提供了丰富的提示信息,便于用户正确的操作;系统有较好的安全性,通过用户角色划分,很好的保证了用户对数据操作的安全性。

从而胜利的完成了测试工作。

七、课程设计的心得体会由于以前大部分时间都在学习理论的知识,所以对数据库设计不是很了解。

通过这次数据库课程设计,我掌握了SQL Server数据库的基本管理方法、常用SQL语言的使用方法以及Visual Basic数据库开发技术,特别是ADO数据访问技术。

在这次设计中,我将每个数据库表的字段和操作封装到类中,从而成功地将面向对象的程序设计思想应用到数据库应用程序设计中。

不仅使我对数据库这门课程的知识有了全面的认识,而且对面向对象的程序设计思想有了更深刻的理解。

我发现理论和实践之间还是存在一定的差距,要把理论知识灵活运用于实践才是最好的,这让我找到了以后学习的方向。

相关文档
最新文档