学生信息管理系统设计与开发(共22页).doc

上传人:飞****2 文档编号:16653513 上传时间:2022-05-18 格式:DOC 页数:22 大小:1.99MB
返回 下载 相关 举报
学生信息管理系统设计与开发(共22页).doc_第1页
第1页 / 共22页
学生信息管理系统设计与开发(共22页).doc_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《学生信息管理系统设计与开发(共22页).doc》由会员分享,可在线阅读,更多相关《学生信息管理系统设计与开发(共22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上河南工程学院数据库原理及应用课程设计成果报告学生信息管理系统设计与开发学生学号: 学生姓名: 学 院: 计算机学院 专业班级: 专业课程: 数据库原理及应用课程设计 指导教师: 年 月 日课程设计指导教师评分表课程设计题目学生信息管理系统设计与开发成员姓名学号任务分工5VB系统窗体设计及数据库设计数据库代码片段筛选及整理数据库及系统整体修改调试评分项目及分值要素成绩评定项 目最高分评 分 要 素成 绩1学习态度20上机出勤及端正的学习态度、认真刻苦程度,工作量饱满程度等2软件设计质量40采用的算法、设计方案,设计结果,界面友好等方面进行综合评定3答辩过程20能简明扼要

2、地阐述设计的主要内容,能准确流利地回答各种问题4设计报告书写10内容按要求步骤书写,条理清晰,表述清楚、措词得当5实际动手能力10熟练使用开发工具,能够迅速准确的进行调试、纠错和运行;组长全面负责,承担复杂的模块设计分值就高总 成 绩等 级评语专心-专注-专业目 录111131、数据需求分析.3.2、概念结构设计(ER图).43、逻辑结构设计(规范化)54、物理结构设计(索引)671219学生信息管理系统设计与开发一、 设计目的设计目的:建立高效利用的学生信息管理系统,实现大量信息的规范管理、科学统计和快速查询,从而更好的减少管理方面的工作量。学生信息管理系统提供了强大的学生信息管理功能,方便

3、管理员对学生信息进行添加、修改、删除、查询、统计等操作。因此,学生信息管理系统能够满足学校的需要,简化学生信息的管理过程,提高管理效率,是学校学生信息管理的一种重要的工具。二、系统实现思路1、需求分析本次的实训课程着手于学生信息管理系统,原因在于学校的规模不断扩大,学生数量也在急剧增加,有关学生的各种信息量也在成倍增长。对于庞大的信息量,一个高效的信息管理系统是能够很大程度上提高学生管理工作的效率。2、总体设计系统功能分析:系统开发的目的是实现学生信息管理系统的关系化、规范化和自动化。学生信息管理系统主要提供对学生信息的管理、班级信息的管理、课程信息的管理以及学生成绩的管理。 主要功能有:(1

4、) 有关学生信息的输入、修改和查询。(2) 班级信息的输入、修改和查询。(3) 基本课程的输入、修改和查询。(4) 成绩的输入、修改和查询。(5) 学生成绩信息的统计。(6) 模拟用户登录操作。系统功能模块设计:学生信息管理系统学生信息添加学生信息查询学生信息修改班级信息添加班级信息查询班级信息修改课程信息添加课程信息查询课程信息修改成绩信息添加成绩信息查询成绩信息修改密码管理用户管理学生信息管理班级信息管理课程信息管理成绩信息管理系统管理图1 系统功能模块三、系统数据库设计1、数据需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输出和输

5、入。收集基本的数据、数据结构以及数据处理的流程,组成一份相近的数据字典,为后面的具体设计打下良好的基础。2、概念结构设计(ER图)学 生学生基本信息学生班级信息学生课程信息学生成绩信息图2 学生实体E-R图班 级班号所在班级班主任所在教室 图3 班级实体E-R图课 程课程编号课程名称课程类型课程描述图4 课程实体E-R图学 生班级设置班 级考核过程课程设置课 程 图5 实体和实体之间E-R图3、逻辑结构设计(规范化)学生管理系统数据库中各个表格的设计如下所示:表1 学生基本信息字段名数据类型大小是否为空说明student_no学号int4否主键student_name姓名char10能无stu

6、dent_sex性别char2否无Born_date出生日期Datatime8能无class_no班级号int能无Tele_number联系方式char10能外关键字ru_date入学日期Datatime能无address地址Varchar50能无comment备注Varcher200能无 表2 班级基本信息字段名数据类型大小是否可空说明class_no班级编号Int10否主关键字class_name班级名Char20否无profession专业Char14能无director班主任charr10能外关键字字段名数据类型大小是否可空说明course_no课程号Int否关键字course_nam

7、e课程名Char10否无course_score学分Int4能无course_time学时int4能无course_type课程类型char10能无course_start开课时间char1能无表3 课程基本信息表4 成绩基本信息字段名数据类型大小是否可空说明exam_no成绩号Char10否主关键字Student_no学号Int4否外关键字course_no课程号Char10否外关键字result成绩Int4是无 4、物理结构设计(索引)班级设置班级信息录入班级信息管理学生信息录入班级设置学生信息管理成绩信息录入成绩信息管理班级设置学生信息录入课程管理登录图6 学生信息管理系统数据流程图学生

8、基本信息:包括学生学号、姓名、性别、出生日期、联系电话、家庭住址等。班级基本信息:包括班级号、班级名、班主任等。课程基本信息:包括课程编号、课程名称、课程类型、学分等。学生成绩信息:包括学生学号、课程编号和考试成绩等。四、详细系统设计针对此次学生信息管理系统,分为了学生信息管理,班级信息管理,课程信息管理和成绩信息管理界面,分多种功能操作,由于时间原因,简单针对学生信息管理进行了比较详细的功能操作测试,先是通过菜单编辑器实现了多功能布局操作,选取了学生信息进行了窗口功能操作。例如:点击添加学生信息,可以实现添加学生信息功能,并且单独设置了模拟用户登录界面,实现了用户隐私安全性保护数据。图7 窗

9、口目录的创建图8 班级信息管理创建图9 学生信息管理创建 图10 课程信息创建图11 成绩信息管理创建图12 工程主窗体的创建用户登录:Dim a As StringDim b As StringDim str As StringDim strr As Stringstr=InStr(Text2.Text,)If str0 ThenMsgBox不能输入非法字符!,vbCritical+vbOKOnly,错误Exit SubElsestrr=InStr(Text1.Text,)If strr0 ThenMsgBox不能输入非法字符!,vbCritical+vbOKOnly,错误Exit SubE

10、nd IfEnd Ifa=Trim(Text1)b=Trim(Text2)If a=ThenMsgBox用户名不能为空!,vbCritical,错误Text1.SetFocusText1.SelStart=0Text1.SelLength=Len(Text1)ElseDim r As New ADODB.RecordsetSet r=DataEnvironment1.rsuserDim c As StringStatic nTryCount As Integerc=select*from用户登陆where用户名=&a&If r.State=adStateOpen Then r.Closer.O

11、pen cIf r.EOF ThenMsgBox无此用户!请重新登陆!,vbCritical,错误Text1.SetFocusText1.SelStart=0Text1.SelLength=Len(Text1)nTryCount=nTryCount+1If nTryCount=5 ThenMsgBox您无权操作本系统!,vbCritical,错误Unload MeEnd IfElseIf b=Trim(r.Fields(1)Thenquanxian=Trim(r.Fields(2)MDIForm1.ShowUnload Me ElseMsgBox密码错误!请重新登陆!,vbCritical,错

12、误Text2.SetFocusText2.SelStart=0Text2.SelLength=Len(Text2)nTryCount=nTryCount+1If nTryCount=5 ThenMsgBox您无权操作本系统!,vbCritical,错误Unload MeEnd If End If End If End If图13 系统启动窗体图14 用户登录窗体五、系统调试运行数据库的创建与调试:1、创建学生信息表CREATE TABLE dbo.student_Info ( student_ID int NOT NULL , student_Name char (10) COLLATE Ch

13、inese_PRC_CI_AS NULL , student_Sex char (2) COLLATE Chinese_PRC_CI_AS NULL , born_Date datetime NULL , class_NO int NULL , tale_Number char (10) COLLATE Chinese_PRC_CI_AS NULL , ru_Date datetime NULL , address varchar (50) COLLATE Chinese_PRC_CI_AS NULL , comment varchar (200) COLLATE Chinese_PRC_CI

14、_AS NULL ) ON PRIMARYGO2、创建班级信息表CREATE TABLE dbo.class_info ( class_No int NOT NULL , class_Name char (20) COLLATE Chinese_PRC_CI_AS NOT NULL , director char (10) COLLATE Chinese_PRC_CI_AS NULL , profession char (14) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO3、创建课程信息表CREATE TABLE dbo.class_info (

15、 course_No int NOT NULL , course_Name char (10) COLLATE Chinese_PRC_CI_AS NOT NULL , course_Type char (10) COLLATE Chinese_PRC_CI_AS NULL , course_start char (1) COLLATE Chinese_PRC_CI_AS NULL , course_time int NULL , course_score int NULL ) ON PRIMARYGO4、创建成绩信息表CREATE TABLE dbo.class_info ( student

16、_Id int NOT NULL , course_No char (10) COLLATE Chinese_PRC_CI_AS NOT NULL , result float NULL) ON PRIMARYGO 学生信息管理系统主窗体的创建与调试:图15 基础工程窗体概览图16 工程窗体的代码展示添加学生信息:图17 添加学生信息窗体Private Sub From_Load() Dim rst As ADODB.Recordset Dim sqlstr As String Dim MsgText As String Dim i As Integer Text1.Text = “”:Tex

17、t2.Text = “”: Combo1.Text = “男” Combo2.Text = “”:Text5.Text = “2000-01-01”: Text6.Text = “2000-01-01”Text7.Text = “”: Text8.Text = “”: Text9.Text = “” Combo1.AddItem “男” Combo1.AddItem “女” sqlstr = “select from class_Info “ Set rst = QuerySQL(sqlstr,MsgText) For i = 1 To rst.RecordCount Combo2.AddIt

18、em rst.Fields(0) Rst.moveNext Next i Rst.CloseEnd SubPrivate Sub Command1_Click() Dim rst As ADODB.Recordset Dim sqlstr As String Dim MsgText As String If Not Testtxt (Text1.Text) Then MsgBox “请输入学号!”, vbOKOnly + vbExclamation, “警告” Text1.SetFocus Exit Sub End If If Not Testtxt (Text2.Text) Then Msg

19、Box “请输入姓名!”, vbOKOnly + vbExclamation, “警告” Text2.SetFocus Exit Sub End If If Not Testtxt (Combo1.Text) Then MsgBox “请选择性别!”, vbOKOnly + vbExclamation, “警告” Combo1.SetFocus Exit Sub End If If Not Testtxt (Combo2.Text) Then MsgBox “请输入班号!”, vbOKOnly + vbExclamation, “警告” Combo2.SetFocus Exit Sub End

20、 If If Not Testtxt (Text5.Text) Then MsgBox “请输入出生日期!”, vbOKOnly + vbExclamation, “警告” Text5.SetFocus Exit Sub End If If Not Testtxt (Text6.Text) Then MsgBox “请输入入校日期!”, vbOKOnly + vbExclamation, “警告” Text6.SetFocus Exit Sub End If If Not Testtxt (Text7.Text) Then MsgBox “请输入电话号码!”, vbOKOnly + vbExc

21、lamation, “警告” Text7.SetFocus Exit Sub End If If Not Testtxt (Text8.Text) Then MsgBox “请输入家庭住址!”, vbOKOnly + vbExclamation, “警告” Text8.SetFocus Exit Sub End If If Not Testtxt (Text9.Text) Then MsgBox “请输入备注信息!”, vbOKOnly + vbExclamation, “警告” Text9.SetFocus Exit Sub End If If Not IsNumeric (Trim(Tex

22、t1.Text) Then MsgBox “请输入数字!”, vbOKOnly + vbExclamation, “警告” Text5.SetFocus Exit Sub End If sqlstr = “select from class_Info “ student_ID =” & Trim(Text1.Text) & “” Set rst = QuerySQL(sqlstr, MsgText) If rst.EOF = False Then MsgBox “学号重复,请重新输入!”, vbOKOnly + vbExclamation, “警告” rst.Close Text1.SetFo

23、cus Else rst.Close If Not IsDate(Text5.Text) Then MsgBox “此出生日期应输入格式 (yyyy-mm-dd)! ”, vbOKOnly + vbExclamation, “警告” Text5.SetFocus Else Text5 = Format(Text5, “yyyy-mm-dd”) If Not IsDate(Text6.Text) Then MsgBox “入校时间应填日期格式 (yyyy-mm-dd)! ”, vbOKOnly + vbExclamation, “警告” Text6.SetFocus Else Text6 = F

24、ormat(Text6, “yyyy-mm-dd”) sqlstr = “select * from student_Info” Set rst = QuerySQL(sqlstr, MsgText) rst.AddNew rst.Fields(0) = Trim(Text1.Text) rst.Fields(1) = Trim(Text2.Text) rst.Fields(2) = Trim(Combo1.Text) rst.Fields(3) = Trim(Text5.Text) rst.Fields(4) = Trim(Combo2.Text) rst.Fields(5) = Trim(

25、Text7.Text) rst.Fields(6) = Trim(Text6.Text) rst.Fields(7) = Trim(Text8.Text) rst.Fields(8) = Trim(Text9.Text) MsgBox “添加学籍信息成功!”, vbOKOnly + vbExclamation, “警告” rst.Close End If End If End IfEnd SubPrivate Sub Command2_Click() Unload MeEnd Sub图18 修改学生信息窗体图19 查询学生信息窗体模块的创建调试:Public fMainForm As frmM

26、ainPublic UserName As StringSub Main () Dim fLogin As New frmLogin fLogin.Show vbModal If Not fLogin.succ Then 登录失败,退出应用程序 End End If Unload fLogin Set fMainForm.ShowEnd SubPublic Function QuerySQL(ByVal SQL_ 图20 模块的创建与调试 As String, Msg As String)_ As ADODB.Recordset Dim cn As ADODB.Connecrion Dim r

27、S As ADODB.Recordset Dim ss () As String On Error GoTo QuerySQL_Error ss = Sqlit(SQL) Set cn = New ADODB.ConnectionConnectString=“Driver=SQLServer;Server=zcj;UID=sa;PWD=sa;Database=Student” cn.Open ConnectString If InStr(“INSERT,DELETE,UPDATE”,UCase$(ss(0) Then cn.Execute SQL Msg = ss(0) & _ “查询成功”

28、Else Set rS = NewADODB.Recordset rS.Open Trim$(SQL), cn,adOpenKeyset, adLockOptimistic Set QuerySQL = rS Msg = “查询到” & rS.RecordCount & “ 条记录” End IfQuerySQL_Exit: Set rS = Nothing Set cn = Nothing Exit Function QuerySQL_Error: Msg = “查询错误: “ & Err.Description Resume QuerySQL_ExitEnd FunctionPublic

29、Function Testtxt(txt As String) As Boolean If Trim(txt) = “” Then Testtxt = False Else Testtxt = True End If End Function六、总结及心得体会(感受、不足)短暂的一周数据库实训课程转眼间已经结束,通过此次的实训课程练习,大大的提高了我的团队协作能力,我们分工明确,对本次的数据库设计内容进行了比较详细的规划。首先,实训前针对所需要的文件进行了提前准备,调试了有关的程序能够正常运行,确保了实训的正常操作。对书本的实例进行了详细的了解,选取了其中的内容作为主要参考,确定了以学生信息管

30、理系统为主要内容的数据库模拟系统,真正的模拟了学生用户的操作体验。 其次,我对于我们组主要负责系统布局设计的一个环节,我肩负了重要的责任,不仅对学生用户信息系统进行了比较综合的布局分析,同时完善了各个布局页面的页面信息设置,与我事先设计好的学生信息管理主窗体完成了对接,以此完成了信息系统的调用操作。最后,遗憾的是在时间的催促下,我们未能将此系统很好的与数据库数据进行对接操作,使我们的模拟操作系统不能完美的实现模拟数据的操作等其他功能,此后,我们会尽力将此系统进行改进,希望能够完美对接数据库并实现更多的操作功能。总接下来,此次的实训课程我收获颇丰,老师的悉心讲解,使我们在迷惑中得以解惑,这次的实训,带给我的不仅是设计出系统的喜悦,更多的是体会到了大家团结一起,各尽其责的感觉,这些都是值得我们去深深回味的,也是值得去珍惜的,也希望实训课程能够越来越丰富,不断的加强和鼓舞我们大家每个人的心理素质。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁