数据库原理及应用课程设计_第1页
数据库原理及应用课程设计_第2页
数据库原理及应用课程设计_第3页
免费预览已结束,剩余41页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理与应用课程设计数据库原理与应用课程设计设计说明书学生学籍管理系统设计与实现学生姓名学号班级成绩指导教师计算机科学与技术系2009年12月24日数据库原理与应用课程设计数据库原理与应用课程设计评阅书题目学生学籍管理系统设计与实现学生姓名学号指导教师评语与成绩指导教师签名:年 月日答辩评语与成绩答辩教师签名:年 月日教研室意见总成绩:室主任签名:年月日数据库原理与应用课程设计陝筋寒工撐整课程设计任务书2009 2010 学年第一学期专业: 信息管理与信息系统 学号:姓名:课程设计名称:数据库原理与应用课程设计设计题目:学生学籍管理系统设计与实现完成期限:自25日共 22009 年12月1

2、4 日至2009 年 12 月周设计依据、要求与主要内容(可另加附页):通过对学校学籍管理业务进行分析、调查,设计学生学籍管理 系统。主要内容与要求如下:(1)建立数据库根据系统功能设计的要求以与功能模块的划分,设计相关数 据库。(2)学生信息管理模块实现学生基本情况的录入、修改、删除等基本操作;对学生 基本信息能提供灵活的查询方式。(3)学生成绩管理模块实现学生成绩的录入、修改、删除等基本操作;能方便的对学生的各个学期成绩进行查询数据库原理与应用课程设计( 4)完成一个班级的学期选课功能。( 5 )统计功能;系统具有成绩统计、排名等功能。指导教师(签字) : 教研室主任(签字) :批准日期:

3、年 月 日摘要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机 地组织起来,就必须建立与自身特点相适应的管理信息系统。本系统实现的功能有学生信息的录入、修改、删除和查询的功 能,学生成绩的管理功能, 班级选课功能和统计功能四大功能模块。本文介绍了在 Visual Basic6.0 环境下采用“自上而下地总体 规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。 通过分析访客管理的不足,创建了一套行之有效的计算机管理学生的方案。文章介绍了访客管理信息系统的系统分析部分

4、,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计 和数据库设计与代码设计;系统实现部分说明了几个主要模块的算 法, 本系统面友好,操作简单,比较实用。关键词: SQL 2000 server ;VB 程序设计;学生学籍管理系统;目录1课题描述12 系统需求分析 32.1 信息需求分析 32.2 功能需求分析 22.3 数据流图 22.4 数据字典 43 系统设计 63.1 数据库概念设计 83.2 数据库逻辑设计 83.3 数据库物理设计 104 系统实现与测试 144.1 系统功能结构 144.2 模块功能的实现 254.2.1 学籍管理模块 25总 结 36参考文献 2

5、31课题描述随着社会的发展,基本上所有的具有一定数量数据的企事业单 位或机关部门都开始使用计算机数据库来做管理。 在各大中小学校, 用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提 高工作效率,而且还节省了许多人力物力,增强了学校资料的安全 性,提高了学校的管理能力,为此,用计算机来管理学校的信息, 是非常必要的。该课程设计要求设计一个学籍管理的数据库系统, 数据库中包含学生的基本信息,学校院系信息,班级信息以与课程 设置的信息。同时还要设计它们之间的关系,如学生与课程关系和 学生的成绩等,最后还要对一些数据进行查询,如查询学生成绩的 各种集合等。而本系统的开发,为学校的工作效率带来

6、了一个质的 飞跃,为此主要表现有以下几个方面:第一, 本系统的运行可以代替人工进行许多繁杂的劳动; 第二, 本系统的运行可以节省许多资源;第三,本系统的运行可以大大的 提高学校的工作效率;第四,本系统可以使敏感文档更加安全,等 等。我们通过该课程设计,应该达到的目的是把数据库理论知识更 加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活 中的应用充分的结合起来。2 需求分析需求分析就是分析用户的要求。在需求分析阶段,系统分析员 将分析结果用数据流程图和数据字典表示。需求分析的结果是否能 够准确地反用户的时间要求,将直接影响到后面各个阶段的设计, 并影响到系统的设计是否合理和使用。本次设

7、计的基于 SQL Server 数据库技术实现学生学籍的管理, 适合一般用户的需要。2.1 信息需求分析学生:学号,姓名,入学时间,班号,性别,联系电话,出生 日期,家庭住址等课程:课程号,课程名,课程类型,课程概述等班级信息:班号,年级,班主任,教师等 成绩信息:学生姓名,课程名,课程号,分数,考试编号等。2.2 功能需求分析系统要实现的主要功能有:( 1)建立数据库根据系统功能设计的要求以与功能模块的划分,设计相关数据库。(2)学生信息管理模块 实现学生基本情况的录入、修改、删除等基本操作;对学生基 本信息能提供灵活的查询方式。( 3)学生成绩管理模块 实现学生成绩的录入、修改、删除等基本

8、操作;能方便的对学 生的各个学期成绩进行查询。( 4)完成一个班级的学期选课功能。( 5 )统计功能;系统具有成绩统计、排名等功能。2.3 数据流图数据流图:简称 DFD ,就是采用图形方式来表达系统的逻辑 功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统 分析方法的主要表达工具与用于表示软件模型的一种图示方法。使用逐步求精的方法, 从顶层流程图逐一分解, 到最终流程图 经过详细的调查,弄清了业务流程,在此基础上,构造出系统的逻 辑模型,并通过数据流图表示。如下图学生学籍信息学籍管理中存学生信息=学生班号+出生存储输出供查询2.4数据字典数据字典(Data dictionary )是

9、一种用户可以访问的记录数据库和应用程序元数据的目录。数据字典有一下几个要点:数据项:数据项是不可再分的数据单位,它直接反映事物的某一特征。数据结构:反映了数据之间的组合关系。数据流:数据流是数据结构在系统内传输的路径。数据文件:数据文件是数据项停留或保存的地方,也是数据流的来源和去向之一。本系统所需有的数据字典卡片列表如下:名字: 别名: 描述: 信息) 定义:位置:名字:课程信息别名:描述:学校幵设的课 定义:课程信息=课 位置:存储输出供选择名字:成绩信息 别名:描述:学生课程的考 定义:成绩信息=考 程名称+得分 位置:存储输出供查询 名字:查询信息 描述:用户所提出的 定义:查询信息=

10、学 学生信息查询信 课程得分查询信 位置:学生学籍管理课程得分管理名字:查询结果描述:系统完成用户定义:查询结果=学询信息学生信息理查询课程得分理查询位置:学生学籍管理课程得分管理简略数据项如下:名字:学生学号别名:描述:唯一地标识学符6位置:学生信息表名字:备注别名:描述:对学生的描述位置:学生信息表名字:课程类型别名:描述:描述课程的类定义:课程类型=必位置:销售信息名字:入校日期别名:描述:记录学生入校定义:销售日期=8 位置:学生信息表3 系统设计 系统设计的任务是确定系统的数据模式、功能结构和系统结 构, 确定系统支持环境、 实现方法和技术。 系统设计的基本内容为:(1) 选择数据库

11、管理系统,建立数据模式。(2) 选择系统支持环境,包括支持系统运行的硬件和软件要求, 确定系统实现功能和方法。(3) 选择系统的基本架构和技术。3.1 数据库概念设计 这一设计阶段是在需求分析的基础上,设计出能够满足用户需 求的各种实体,以与他们之间的关系,为逻辑结构设计打下基础。这个阶段用到的工具是 ER 图(实体-联系图)。 本系统中有四个实体集:学生实体集课程实体集成绩信息实体集班级实体集E-R 图如下、出牛一口期)J/7学4(1 1r丿 / /入学时阿图3.3成绩实体E-R图图3.4班级实体E-R图也乜怜匕.口(奇垃附訂J图3.5系统总体E-R图3.2逻辑设计逻辑结构设计的主要目标是将

12、概念结构转换为一个特定的DBMS可处理的数据模型和数据库模式。该模型必须满足数据库的 存取、一致性与运行等各方面的用户需求。该设计以概念结构设计中的E-R图为主要依据,设计出相关的整体逻辑结构。根据总 E-R图有五个实体但仓库实体在本系统中作用不大而且仅涉与到一个仓库,所以仓库不再单独设计一张表。再加上一个多对多关系(本系统不考虑供应关系)总共五个关系模式:学生信息(学号,性别,姓名,班号,入校日期,出生日期,联系电话,家庭住址,备注)班级信息(班号,年级,班主任,教室)课程信息(课程编号,课程名称,课程类型,课程描述)成绩信息(考试编号,姓名,课程,成绩)3.3物理设计从一个满足用户需求的已

13、确定的逻辑模型出发,在限定的软、硬件环境下,利用DBMS提供的各种手段设计数据库的内模式,即设计数据的存储结构和存取方法。数据库物理结构设计是对于给定 的逻辑数据模型,选择一个适合的物理结构,主要涉与存取方法与 存储结构,它依赖于计算机系统。1.关系模式关系数据库系统采用关系模型作为数据的组织方式,现在流行的数据库系统大都是关系数据库系统。通过对关系模式的优化,得到六个基本表。表3.1学生信息表字段名字段类型长度主键或外键字段值约束对应中文属性名stude nt_lint4PrimaryNot Null学号DKeystude nt_char10姓名Namestude nt_SChar2性别ex

14、born _DatDateti8出生日期emeclass_NOchar12班号tele_NumChar11电话号码berru_Datedateti8入学日期mecomme ntvarchar200备注addressvarchar50地址表3.2课程信息表字段名字段类型长度主键或外键字段值约束对应中文属性名course_NInt4PrimaryNot Null课程编号oKeycourse_Namechar10课程名称course_TypeChar10课程类型course_Deschar50课程描述表3.3班级信息字段名字段类型长度主键或外键字段值约束对应中文属性名class_NoChar12Pr

15、imaryNot Null班号Keygradechar10年级directorChar10班主任classroomChar10教室_No表3.4年级选课表字段名字段类长度主键或外字段值约对应中文属型键束性名gradeChar10PrimaryNot Null年级Keycourse_NaChar10PrimaryNot Null课程名meKey表3.5成绩信息表字段名字段类型长度主键或外键字段值约束对应中文属性名exam_NoChar10PrimaryNot Null考试编码Keystude nt_lint4PrimaryNot Null学号DKeyForeig nkeystude nt_NCh

16、ar10学生姓名ameclass_NoChar12班号course_NaChar10PrimaryNot Null课程名称meKeyresultfloat8成绩表3.6用户登录表字段名字段类型长度主键或外键字段值约束对应中文属性名user_IDChar10PrimaryKeyNot Null用户名称user_PWDChar10PrimaryKeyNot Null用户密码user_DesChar10用户描述2.简单物理设计在SQL Server 2000中,文件夹是按数据库对象的类型建立 的,文件夹名是该数据库对象名。当在企业管理器中选择服务器和数 据库文件夹,并打幵已定义好的student数据

17、库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文 件夹。要建立各个表,选择student数据库中的表,单击鼠标右键, 在弹出的菜单中选择“新建表”。下面的表均使用上述方法制作。具体在Sql server 2000 环境下,设计用户表,如下图所示:世怎匚一辽-“CDn口 0 日 nDl-luRDn口 0 口 *?=4rr瓷£豐h'. si'i MHI J=l > r .e ; ran图3.6数据库表学生信息表的物理设计如下:图 3.7 设计 student_lnfo 表在数据库中,右击stude nt_lnfo表,返回所有值,然后输入

18、原始数据;I口掠島 踱-Stndflrt* 札(lredU 上5tudai ?3iehonjih|cl*35 ID|teh SncnijattIciDElt一删馄£i燧11!崔2DDT-9-172IM應皿121斓减珈円:721K49jm-i12加醐£Q0W叨加1KiW11<卷imsiqanm图 3.8 student_lnfo 表班级信息表的物理设计如下:图3.9 设计classnfo 表在数据库中,右击classnfo表,返回所有值,然后输入原始数据前 表中的软据"卷置是-Student"中、H (locanclass KoI sradeI di

19、rectorI dassroom Ho卜076#4C67107钟永友&#4C5土图 3.10classnfo 表课程信息表的物理设计如下:图3.11设计coursenfo 表在数据库中,右击coursenfo 表,返回所有值,然后输入原 始数据。話表 Ucoursc_likfo"中的数据.住置是"Student"中* "(locsl)"上course_Nocciirs* Hsuiecouris Typ电course1数据库2软件工程软件工程槻论图 3.12coursenfo 表年级课程信息表的物理设计如下:图 3.13 设计 grade

20、coursenfo表在数据库中,右击gradecoursenfo表,返回所有值,然后输入原始数据JJrt 表 a gradecourseIn-f中的数据.检置是 *StTiLdenl:中.* (local) * 上图 3.15 gradecoursenfo表成绩录入表的物理设计如下:图3.16 设计resultnfo 表在数据库中,右击resultnfo表,返回所有值,然后输入原始数据图 3.17resultnfo 表iiLfo"中的数te.直證呈-Student*中.* (local)" Jl-:ii1 stijdent TDstudent Nutfiie1 CL a*E

21、SIoI COUT 弓日1 result艾)旳-20匸15字年721024042王勇72高彎STM91?oot72102404772画学如J60721024043张良餐ngst学年7g10?4051fiS焉E金TS3ZTirH-m日学年72104042丁弟72葩福库AB学年7210Z404772ft4ZOCFI-前(:日学年7210240497?致隹库靶艾im-ri:勺字耳72102405172數葩库69用户登录表的物理设计如下:图3.18 设计usernfo 表在数据库中,右击usernfo表,返回所有值,然后输入原始 数据。命 < -userInftt"中肿数据.童置是 *

22、 Student"中、* (local)"上user 匸Duser PffDns er J e e|卜L11 >1 sntstulent<mL>王勇1£3<hull>*图 3.19 usernfo 表4系统实现通过上面系统需求分析,数据库的逻辑结构与物理结构的设计,本章节便可以实现系统。 4.1系统功能结构 具体功能模块图如下:学生学蘇管理系统色询学生信息 删除字土倍I心 修改学生信息学生逸课h-成佶 息图4.1系统功能图4.2模块功能的实现通过上面章节的系统分析,需求分析,功能模块的设计之后, 在此节可以对每个模块功能的实现。使用V

23、B界面控件可以设计如下主界面。图4.2系统主界面学籍管理模块该模块主要描述了系统的登录,添加班级,添加课程,添加成绩,添加学籍等功能,具体的功能如图所示:1.登录界面:图登录界面系统通过如下主要代码实现登录界面功能:txtSQL = "select * from usernfo where user_IDtxtUserName.Text & "”'Set mrc = ExecuteSQL(txtSQL, MsgText)2.添加班级:图添加班级界面系统通过如下主要代码实现添加班级功能:txtSQL = "select * from class_I

24、nfo "Set mrc = ExecuteSQL(txtSQL, MsgText)mrc.MoveFirst3.添加课程:图423添加课程界面系统通过如下主要代码实现添加课程功能:txtSQL = "select * from coursenfo "Set mrc = ExecuteSQL(txtSQL, MsgText)4.添加成绩:7 StJ 3N »图4.2.4添加成绩界面系统通过如下主要代码实现添加成绩功能:comboSID.CIearcomboCourse.ClearwherewheretxtSQL = "select * from

25、 student_Info class_NO = '" & comboClassno.Text & "'"Set mrc = ExecuteSQL(txtSQL, MsgText)While (mrc.EOF = False)comboSID.AddItem mrc!student_ID mrc.MoveNexttxtSQL = "select * from class_Info where class_No '" & comboClassno.Text & "'&quo

26、t;Set mrc = ExecuteSQL(txtSQL, MsgText)Grade = mrc!Grademrc.ClosetxtSQL = "select * from gradecourse_Info grade = '" & Grade & "'"Set mrc = ExecuteSQL(txtSQL, MsgText)While (mrc.EOF = False) comboCourse.AddItem mrc!course_Name mrc.MoveNext5. 添加学籍:图425添加学籍界面系统通过如下主

27、要代码实现添加学籍功能:txtSQL = "select * from stude nt_lnfo where student_ID = '" & Trim(txtSID.Text) & "”'Set mrc = ExecuteSQL(txtSQL, MsgText)6.添加用户:图添加用户界面系统通过如下主要代码实现添加用户功能:txtSQL = "select * from user_l nfo "Set mrc = ExecuteSQL(txtSQL, MsgText)7.查询成绩:图427查询成绩界面系统

28、通过如下主要代码实现查询成绩功能:txtSQL = "select * from resultnfo where " dd(1) = TrueIf dd(0) ThentxtSQL = txtSQL & "and stude nt_Name='"& txtName.Text & "'"-ElsetxtSQL = txtSQL & "stude nt_Name ='" & txtName.Text & "'-8.查询学籍:-h

29、M'l出莹鬥-HE 呀4+ eL iA7%檯曰创临屯Lk*:i JU-7 |15厂 i.;. iIQ"图428查询学籍界面系统通过如下主要代码实现查询学籍功能:txtSQL = "select * from stude nt_lnfo where "dd(0) = TruetxtSQL = txtSQL & "stude nt_ID='" &Trim(txtSID.Text) & "'"9.修改班级:图修改班级界面系统通过如下主要代码实现修改班级功能:txtSQL = &quo

30、t;select * from coursenfo "Set mrc = ExecuteSQL(txtSQL, MsgText)mrc.MoveFirst10.修改课程:图修改课程界面系统通过如下主要代码实现修改课程功能:t xtSQL = "select * from coursenfo "Set mrc = ExecuteSQL(txtSQL, MsgText)mrc.MoveFirst11修改成绩:图4211修改成绩界面系统通过如下主要代码实现修改成绩功能:txtSQL ="select * fromstude nt_lnfowherestude

31、nt_ID = '" &comboSID.Text & "”'Set mrcc = ExecuteSQL(txtSQL, MsgText) txtName.Text = mrcc!stude nt_Namemrcc.Close12.修改学籍信息:图4.2.12修改学籍信息界面系统通过如下主要代码实现修改学籍信息功能:txtSQL = "select * from stude nt_lnfo "Set mrc = ExecuteSQL(txtSQL, MsgText)wheremrc.DeletetxtSQL = "

32、;select * from student_lnfo stude nt_ID = '" &Trim(txtSID.Text) & "”'Set mrcc = ExecuteSQL(txtSQL, MsgText)13.修改密码:图修改密码界面系统通过如下主要代码实现修改密码功能:txtSQL = "select * from usernfo where user_ID = '" &UserName & "”'Set mrc = ExecuteSQL(txtSQL, MsgText

33、)mrc.Fields(1) = Text1(1).Text14.设置年级课程:图设置年级课程界面系统通过如下主要代码实现设置年级课程功能:txtSQL = "select * from gradecoursenfo where grade ='"& Trim(comboGrade.Text) & "'"Set mrc = ExecuteSQL(txtSQL, MsgText)o "txtSQL ="select * from course_Info "Set mrc = ExecuteSQL(txtSQL, MsgText)txtSQL = "select * from gradecourse_Info where grade = '" & comboGrade.Text & "'"Set mrc = ExecuteSQL(txtSQL, MsgText)总结课程设计是培养学生综合运用所学知

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论