数据库课程设计报告书学生信息管理系统1Word格式.docx
《数据库课程设计报告书学生信息管理系统1Word格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计报告书学生信息管理系统1Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
2009.12.21-2009.12.31
系统设计
5
2009.12.13-2009.12.28
课程设计报告纂写
2009年12月31日
计算机科学系
数据库原理及应用
课程设计报告
选题名称:
系(院):
班级:
组员:
指导教师:
学年学期:
~学年第学期
年月日
摘要:
在现今信息时代,生活速度的加快,使得人们越来越向信息化、数字化发展,管理信息系统(MIS)是一个由人、计算机等组成的能进行信息的收集、传递、储存、加工、维护和使用的系统,必然能代替过去大量、繁杂的手工操作。
对于一所学校来说,如何利用计算机改变每次考试结束后老师们统计大量的学生成绩时的繁重任务?
如何消除因时间紧所产生的统计结果错误百出?
设计出学生成绩管理系统就是一个很好的解决方法。
开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,实现了学生成绩数据库的创建及学生成绩的输入、浏览、维护和统计,使得系统具有功能强大,界面友好的特点。
本系统主要完成对学生信息的管理,包括添加、修改、删除,查询,打印信息以用户管理等六个方面。
系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。
系统的核心是添加、修改和删除三者之间的联系,每一个表的修改都将联动的影响其它的表,当完成添加或删除操作时系统会自动地完成学生信息的修改。
查询功能也是系统的核心之一。
此外,系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。
关键词:
学生信息管理系统;
数据库系统;
SQLSERVER2000
目录
1需求分析1
1.1系统需求分析1
1.2可行性分析1
2数据库的概念设计2
3数据库的逻辑设计2
4数据库的物理设计2
5应用程序设计4
5.1系统功能分析4
5.2系统功能模块设计4
5.3系统目标分析5
6编程实现6
总结与体会12
参考文献13
数据库原理及应用课程设计报告
1需求分析
1.1系统需求分析
伴随社会的高速发展,全国各高校的学生数量一直在增加,在这样的形式下,必须要求学校有一种高效有序的方法来管理学生的信息。
通过调查,要求系统需要有以下功能:
由于该系统支持多用户管理,要求支持添加用户的功能;
原始数据修改简单方便,支持多条件修改;
方便的数据查询,支持多条件查询;
删除数据方便简单,数据稳定性好;
1.2可行性分析
本次课程设计题目:
“学生信息管理系统”,主要目的是编制一个网页登陆系统,连接数据库系统,用以实现学生、班级以及考核成绩等多项管理。
同时对整个系统的分析、设计过程给出一个完整的论证。
学生信息管理系统是一种基于集中统一规划的数据库数据管理新模式,其实就是对学生、班级、考核成绩的管理。
在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。
随着信息量的不断增加,作为计算机的三大主要应用(科学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并且现代的信息管理系统几乎都以数据库技术作为核心。
由于本系统管理的对象简单,且每个数据内容之间都具有较强的关联性,涉及过程并不是很复杂。
因此,比较适合于采用数据库管理。
在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
2数据库的概念设计
根据以上需求分析,可画出数据库的E-R模型图:
图2.1数据库E-R图
3数据库的逻辑设计
根据系统功能设计的要求以及功能模块的划分,对学生信息管理网站可以列出以下数据项及数据结构:
学生个人基本信息:
主要包括学生的学号、姓名、性别、出生日期以及学生所在的班级。
课程基本信息:
主要包括编号及课程的名称。
学生选课信息:
主要包括学生的学号及所选课程的编号。
学生考核信息:
主要包括学生的学号及考核结果。
用户信息:
包括用户的帐号及密码。
4数据库的物理设计
根据系统需求及逻辑结构设计,本网站基于SQLServer2000数据库,建立如下数据库表。
说明:
课程的基本情况,course_no设为主键。
Course_no
Course_name
Course_hour
Course_credit
Active_status
0001
高等数学
64
Y
0002
大学英语
32
0003
线性代数
48
表4.1课程信息表Course
学生选课成绩,student_no,course_no设为主键。
Student_no
Score
88
55
66
78
86
77
N
33
44
表4.2学生选课成绩表score
学生基本信息,student_no设为主键。
Student_name
Student_sex
Student_sge
Student_phone
Student_address
周五
男
22
1234567
北京市
郑五
女
25
4565775
上海市
李霞
24
1111111
天津市
表4.3学生基本信息表student
教师授课信息表,course_no,teacher_no设为主键。
Teacher_no
表4.4教师授课信息表teach
教师信息表,teacher_no设为主键。
Teacher_name
Teacher_sex
Teacher_age
Teacher_level
张三
30
教授
李四
讲师
王新
28
助教
0004
王芳
40
表4.5教师信息表teacher
用户信息表,user_name设为主键。
User_name
User_password
User_level
Admin
123
Teacher
Student
表4.6用户信息表UserInfo
5应用程序设计
5.1系统功能分析
学生信息管理网站基于用户验证登录的方式实现学生信息管理、课程信息管理、年终考核管理、班级管理及用户管理等功能。
其功能结构如图:
图5.1系统功能结构图
5.2系统功能模块设计
学生信息管理网站主要包含用户登录、学生信息管理、课程信息管理、年终考核管理、系统管理等功能模块。
1、用户登陆
学生信息管理网站采用用户名及密码验证方式,进入学生信息管理网站前,用户必须在登录页面输入用户名及密码,只有验证通过的用户方可进入学生信息管理网站操作主页面。
2、学生信息管理
包含3个功能模块:
学生个人信息的添加、学生信息的查询以及学生信息的修改与删除。
3、课程信息管理
包含4个功能模块:
课程基本信息添加与删除处理、与学生信息结合实现学生选课处理、学生退选课程处理以及学生选课信息的查询处理。
4、系统信息维护模块
包括用户基本信息管理与班级信息的管理。
其中,用户管理包括用户的添加、删除、密码修改;
班级信息管理包括班级信息的添加、删除处理。
5.3系统目标分析
学生信息管理网站主要提供学生信息的管理以及课程信息管理与考核管理等,其主要功能如下。
●登录管理
用户名及密码验证处理
●学生信息管理
实现学生基本信息的维护,功能如下:
○录入学生个人信息。
○学生信息列表及修改、删除处理。
○学生信息查询。
●课程信息管理
实现课程基本信息和选课信息的维护,功能如下:
○选课、退课处理。
○课程基本信息维护:
添加、删除。
○选课结果查询
●考核信息管理
实现学生年终考核信息的管理,功能如下:
○学生考核处理。
○考核结果查询。
●用户管理
实现网站用户信息的维护,功能如下:
○用户的添加与删除。
○用户密码修改。
●班级信息管理
班级及专业信息的添加与删除。
系统操作流程图:
图5.2系统操作流程图
6编程实现
1、数据库连接conn.asp
数据库连接利用ODBC数据源,本系统在conn.asp文件中使用DBConnBegin及DBConnEnd两个函数,实现了SQLServer数据库连接的打开和释放。
代码如下:
<
%@Language=VBScriptCODEPAGE=936%>
%OptionExplicit%>
%
DimoConn,oRs,sSql
SubDBConnBegin()
IfIsObject(oConn)=TrueThenExitSub
SetoConn=Server.CreateObject("
ADODB.Connection"
)
OnErrorResumeNext
DimConnStr
ConnStr="
DSN=ST;
UID=baihtjs;
PWD=123456"
oConn.OpenConnStr
IfErr.Number>
0Then
Response.End
EndIf
SetoRs=Server.CreateObject("
ADODB.Recordset"
)
EndSub
SubDBConnEnd()
oRs.Close
SetoRs=Nothing
oConn.Close
SetoConn=Nothing
EndSub%>
2、学生信息输入add.asp
图6.1学生信息输入
包含学生所在班级、学生学号、姓名、性别以及出生年月的输入与存储处理,使用insert语句实现学生信息添加保存处理。
SQL语句如下:
sSql="
insertintoStuInfoValues('
"
&
stuid&
'
'
stuname&
stusex&
stubirth&
stuclass&
)"
3、学生信息修改或删除modify.asp、delete.asp
图6.2学生信息修改或删除
学生信息的修改或删除是通过在本网站的学生信息查询或所有学生信息列表中单击“修改”或“删除”进行处理。
updateStuInfosetstuname='
StuSex='
StuBirth='
class='
whereStuID='
deletefromStuInfowhereid="
cstr(id)
4、选课toSelect.asp
图6.3学生选课
在列表中选择相应的学生,单击“选课”即进入到选课处理页面,SQL语句如下:
insertintoCourseSelectedInfovalues('
course&
5、退课delcourse.asp
图6.4学生退课
学生在选择了课程之后,可以实现课程的更换或退选处理。
deletefromCourseInfowhereCID='
cid&
6、考核输入toExamine.asp
图6.5学生考核输入
选择了考核等级之后“确认”即可对学生进行考核处理。
insertintoExamineInfovalues('
kaohe&
7、考核修改与删除delExamine.asp
图6.6学生考核修改与删除
学生考核信息的修改与删除在本网站中可以看作是一种类型的操作,要修改考核信息,首先删除考核信息,然后再进行学生考核处理。
CallDBConnBegin()
dimid,stuid
id=trim(request("
id"
))
select*fromstuinfowhere[ID]='
CStr(id)&
oRs.opensSql,oConn,3,2
ifnot(oRs.EofandoRs.Bof)then
stuid=trim(oRs("
StuID"
oRs.close
'
删除考核信息
sSql="
deletefromExamineInfowhereStuID='
oRs.opensSql,oConn,1,1
endif
CallDBConnEnd()
Response.redirect"
ExamineSearch.asp"
%>
总结与体会
大致的总结几点,如下:
1.在开发一个系统时,前期的分析准备工作非常的重要。
对于系统的需求要明确,这样才能做到有的放矢。
特别是对于系统中数据的存储和重要算法的设计,设计的不好会出现大量的冗余,不仅浪费存储空间,还影响查询效率。
2.在设计的初期,对一个功能模块的设计,要想出两种或两种以上方案,这样可以进行比较,从而获得更佳的设计方案,设计开发过程中一定要吸取经验教训,避免返工。
尤其是一些重要算法或功能。
在对具体实现功能模块进行编程时,要养成良好的加注释的习惯,这样的话不仅能理清思路,而且可以为以后的调试带来很大的方便。
3.懂得充分利用网络资源,因为实地调研的时间是非常有限的,所以需求分析中大部分分析结构都是在我阅读专业书籍,网络资料后得出的。
由于在外面工作以及其他原因,我无法借到专业书籍,只好在浩瀚的网络中寻找我所需要的资料,这无形当中培养了我通过网络获取资料信息的能力。
参考文献
1施伯乐,丁宝康,汪卫.数据库系统教程.第2版.北京:
高等教育出版社,2007
2赵松涛.中文版SQLServer2000应用及实例集锦.北京:
人民邮电出版社,2002
3屈喜龙,朱杰.ASP+SQLServer开发动态网站实例荟萃.机械工业出版社,2006
4闫静,钟斌.动态网页基础与实例.北京:
机械工业出版社,2004
5龚宗渝,王茜.PhotoshopCS2平面设计.北京:
北京希望电子出版社,2006