教务系统数据库设计.docx
教务系统数据库设计课题的研究背景与意义课题的研究背景目前我国各行各业的信息化建设开展得如火如荼,这种信息化的发展已经影响到了 各学校。学校在对学生进行管理时,学生学籍的管理一直都是很麻烦的事情,不仅仅管 理起来不易修改和更新,而且学生需要了解本人的信息时,也需要去学校教务处找专门 人员.由于这些操作的繁琐性,教务管理系统的开发成为各学校必须的事情,特别是各个 高校.一个成功的教务管理系统,应该能够有效地辅助教务人员工作,提高学校学生的学 籍、成绩等管理能力,并且不断完善系统,以便更好的帮助学生、教师、系统管理人员 等管理成绩、课程、学籍等。然而目前许多教务管理系统在使用时,效率低下容易出错,学生、教师资料不易整 理,大量丢失,这些无疑都已成为管理学生学籍、教师信息的障碍.这就要求学校能够建 立高效的教务管理系统,对学生的选课、查询等操作及流程进行规范化管理,简化业务 流程,提高工作效率并防止中间的漏洞;迅速、准确地捕捉用户要求并加以高效回应。 同时需要不断完善系统,增加模块,更好的满足用户需求,简化教务人员的管理工作, 尽量做到一切信息化。课题的研究意义对于学校教务处而言,最主要的是管理学生的学籍、管理教师的课程教授.如果使用 一般的方法来管理,会比较繁琐,管理起来也很有可能出错。为了方便教务人员的管理工 作,提高工作效率,同时为了更好地为学生、教师提供服务,有必要开发教务管理系统, 使学校的教务管理走上信息化之路,克服人为的种种弊端。教务管理系统的开发不仅可以减少人力、物力和财力资源的浪费,更重要的是有助 于提高教务管理的效率.教务管理人员管理学生学籍、管理教师课程教授时是一项复杂的 组织工作,这种复杂性不仅仅指学生学籍变更快,变更人数众多,更突出地表现在教务 管理主要对象(即学生)的数据量大,管理起来带来不便,所以开发一个实用、高效的教务 管理信息系统是很有必要的.系统的内容简介教务管理系统为教务管理人员管理日常教务工作提供了方便。学生可以使用此系统 查询自己已修完课程的成绩、查看自己的学籍信息、选课等;教师可以使用此系统给学 生所选的课程打分、查看自己的信息及课程安排情况等;管理员可以使用此系统添加相 关用户信息、备份数据等.因此本系统主要实现学生功能、教师功能、管理员功能。学生功能:个人信息查询、修改;在线选课;密码修改;留言、查看留言等。教师功能:教学实施计划查询;选课信息查询、打分;个人信息查询、修改;密码 修改等。管理员功能:教师信息修改、删除;管理员信息修改、删除(有权限之分);课程信息 添加、修改、删除;学生学籍信息查询、修改、删除(有权限之分);留言查看、删除(有 权限之分)等。MySQL数据库MySQL是一个遵循GPL的开源软件、在Linux平台底下它是LAMP(LAMP代表 了 Linux平台上的Apache网站服务器;MySQL数据库以及Perl、Python或者PHP编程 语言的结合)组合重要组成部分,同时它提供的C API可以结合Glade/GTK+,代替 Windows 平台的 VB+ACCESS/MS SQL SERVER 组合.MySQL数据库具有以下特性:使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性。 支持 AIX、FreeBSD、HPUX、Linux、Mac OS、Novell Netware OpenBSD、 OS/2 Wrap、Solaris Windows 等多种操作系统。为多种编程语言提供了 API。这些编程语言包括C、C+、Eiffel、Java、Perl、 PHP、Python、Ruby 和 Tcl 等.支持多线程,充分利用CPU资源.采用优化的SQL查询算法可以有效地提高查询速度.既能够作为一个单独的应用程序应用在客户端/服务器网络环境中,也能够作为 一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。提供TCP/IP、ODBC和JDBC等多种数据库连接途径.提供用于管理、检查、优化数据库操作的管理工具.可以处理拥有上千万条记录的大型数据库。教务管理系统的设计与实现开发和运行环境选择教务管理系统主要用于学校内部资源管理(如学生在线选课、成绩查看、学籍查看 等),充分利用现代高度信息化手段来接受学生信息的咨询和反馈,形成目前学校内部 受欢迎的教务产品,同时也方便了教务管理人员的管理工作,也方便了学生对自己个人信 息的实时了解。1、开发工具的选择用Tomcat作Web服务器,利用My Eclipse设计代码,使用MySQL建立数据库。2、运行环境要求 中央处理器:Inter Pentium 4 2。67GHz或更高性能的CPU(推荐使用P4 3。0GHz 以上). 操作系统:Microsoft Windows XP /Vista,或 Windows2003 (或更高).物理内存:512MB (推荐使用1G以上). 硬盘空间:至少需要2G硬盘空间。光驱。 VGA监视器。鼠标或其他定位装置。 网络支持:任何与 Windows 98/NT/2000/Me兼容的网络.系统设计系统功能分析教务管理系统主要具有以下功能要求:学生功能:个人信息查询、修改;在线选课,密码修改;留言、查看留言等。教师功能:教学实施计划查询;选课信息查询、打分;个人信息查询、修改;密码修改等。管理员功能:教师信息修改、删除;管理员信息修改、删除(有权限之分);课 程信息添加、修改、删除;学生学籍查询、修改、删除(有权限之分;留言查 看、删除(有权限之分)等。系统功能模块设计根据系统功能要求分析,可以将系统分解成以下几个功能模块来设计,如图3.1所 示。教务管理系统图3。1系统功能模块图数据库设计数据库是信息管理系统的基础,数据库的结构直接关系到各种功能的实现和程序运行的效率。数据库概念结构设计tcacbbifcteacii_idpecialiiy post tMckdurwfeavew-wdinfoPK梆。idlove date 届 ynanK Im 代_CQHi£UrnarnadufbmanajdUHmamc password, popedeachtngplan.FKuourw name toursejindbcgin_3pctaL5vperkd雎名与嚅名长-tSJUIDE虾od寮前的academegradecrcoursc achieiirefiwiil standscoarwinfoFKcourse idcouisf_nawteachclassinfoPKidspedliiy grade g nurncourse namelecicoiuixinfbFKIcourse_id stii_id leather ahievenwnt图3。2数据库结构设计图外部设计标识符和状态本系统采用Microsoft Server 2003为基本开发工具,数据库名称为Test。数据库中一 共建立了 9个表,表名分别为Student(学生表),Teacher (老师表),Manager (管理员 表),Course (课程表),Courses (课次表),sEnroll(学生注册表),s_cs_grade (学生_课 次_成绩表),s_academe_no (学院号表),s_specialty_no (专业号表)。附注:1后两个表仅是简单的院系和院系号对应表;2. 此表仅是暂时使用的,仅用于测试;3. 此表的有效时间到此项目完成时。约定本系统采用Microsoft Server 2003为基本开发工具,因而程序员或者系统分析员, 或者任何想要使用此数据库进行操作的人员,需要安装Microsoft Server 2003,并建立 相同的数据库,当然可以进行联机访问,这需要安装相应的插件。数据库中所建立的表名如(2.1标识符和状态),对于表的各个属性,在下面会有描述。专门指导对于从事此数据库的生成、此数据库的测试、维护的人员,提出如下参考意见:数据库的输入统一采用键盘.由于现在没有设置权限,故只要不违背基本的限制,所有的操作都 是可以进行的.可是对于本系统需要的数据,却是有数据长度限制的,尤其是有说明的部分,所以测试 人员在具体进行数据测试时,要注意数据输入格式。概念结构设计Update-Course . . Update-InOrmationDelete-CourseStudentSearch-MessageSeach-CourseSeach-InOrmationTeacherSearch-CourseTableUpdate-Enrollr Add-Grade6 - 一 一 QSeach-Grade Search-EnrollAdd-messageShow-CourseTableXManager 、Add-InformationCompute-A'erageDelete-Message Update-MessageUpdate-StudentStateE-R图如下scgradestatetnotnameT_telcsroomC. S-academe noStudentCourse1n"一;. T_mailCoursesQs_age4|T_position;匚_term 二/,【cn/'Teachercstcno.,.xuefencname_一_、property'sEnroll .; ManagerUT_start_timexC_T_psw 二 一_ T_addresstnocnosJcs_start_timemnoVtel- _ -. mname匕/二' M_tel >, M_mail、M cardID - S_specialty_no4sname;.S_psw .S_class _S_state,snoS_mail(cno逻辑结构设计将上面的E-R图进行分析后,形成如下的逻辑关系结构:course +courses +enocn:djn ec ji er i ci d xiieferL pr op ertycruj sCTlOce_eterm'2 s_r ci umtnoterme erLTull i dSTlusnaiii eE JiEWs_ageE_:±dilreEEE_C1:±EE 5_acaileme_rLi:i s_speci :alty_rLO E_mail s_telE_c:di-iiIHrvtrL:diii et_p swCaget_p u e i t i orit_adilre5 5t_teltrLi:<物理结构设计在数据库中,数据的存储如下:Student Table列名数据类型长度咒许空snpi:il_ ch:d2-EOErL:=UTlHwar c:harFOwar 匚 har5Qint4E_adii2-eEEVWdhai-50vaiyhar50E_:=Lizailen-ie_rLijwar c:har50E_spe ci al ty_rn:ivar charSOwar char5Qa_telwar char50char1varcihay50E_gi-:ddh!vm 虫 arSOestateT.-:dl- ch:dl_E0E_ztate_t imelai etime0s_st:ite_pei_L-?dim4髀 ID 名称数据类型丈小空默认值:臭eno,-/arcliar5D._.snamevarchar弓s_pswvarchar耶s_ageint£5_address-/srcl'iar5Ds_classarchar耶3_acddeme_novarcliarTeacher Table键JlD名称数据类型大小.空默认值rtnamevancharKt_pswvarcharS:t_36Xcliar1t_ageint4砒 artjtimevarcharKt_position/anch arKt_addnessvancharKCourse TableID名称数据类型太小.空默认值eno6E.一.一一.cnamevarchr5:口c_periodint£xuefenint4propertyvarchar&ECourses Table牌ID名称数据类型太小.定默认值cnosvarchar&EenoyanchdrK.一.一一.口cs_startjirrier'anchar5Etermdatetimegcs_roomr'archar5:tnovarchar&EManager Tablemnovarchar&rnnarnej'ardiar5rri_sdd 降胴vanchar员/arch ar昵m_c3ndlDvardiar5<m_telvarchar&m_m己vardiar5键ID名祢数据类型大小.空默认伯c_cs_grade TableID 名称数据斐型大小.空 默认值esnovarchsr5C苜cnosvancharBCsegradeint£scgrade_etater'arthar5LsEnroll Table解ID 名称数据类型丈小.空 默认值snovanchar 5D|s_enroll-/arcliar5Ctermvancliar5Cs_ennoll_idvancliar5Lmnovarcl'iar:-s_academe_no Table健ID名祢数据类型大小.一空驮认值s_acadennevarchar乩3_academe_no vanch 己5 匚s_specialty_no TableID名称数据矣型太小一空's_speci3h5'varcliars_spec:ialt>,_no -/arcliar z -运用设计数据字典设计数据字典采用如下的格式:。01数据库设计资料。02储存的SQL程序.03用户权限.04用户的名字。05用户统计。06数据库增长统计.07列的缺省值。08约束信息的完整性.09用户及角色被授予的权限。.11分配多少空间,当前使用了多少空间等。12其它产生的数据库信息。安全保密设计使用者在使用此数据库时,由于不同的访问者的登陆号码不同且增加了密码设置,故相当于对 于数据的访问设置了权限,所以数据可以说是安全的。管理员的权限最大,可以控制所有的数据教 师和学生只能够看到与他们自己有关的信息,而不能随便修改他人信息数据库逻辑结构设计根据数据库结构设计图,可知在数据库中需建立8张表.本系统创建的数据库为 education,该数据库由学生信息表单(stuinfo)、教师信息表单(teachinfo)、管理员表单 (manainfo)、教学实施计划表单(teachingplan)、教学班表单(teachclassinfo)、留言板 表单(leavewordinfo)、课程信息表单(courseinfo)、选课信息表单(selectcourseinfo) 组成,在设计中所用到的关系表及其结构分别如下所示.1、学生信息表单(stuinfo),如表3。1所示。表3.1学生信息表单列值数据类型数据长度可否为空描述主键stu_idvarchar30否学号namevarchar10否姓名passwordvarchar30否密码sexvarchar2否性别specialityvarchar30否专业academevarchar30否学院gradevarchar30否年级overcoursevarchar30否已学课程achievementvarchar30否成绩statusvarchar30否学籍状态2、教师信息表单(teachinfo),如表3。2所示.表3。2教师信息表单列值数据类型数据长度可否为空描述主键teach_idvarchar30否教师工号namevarchar30否姓名passwordvarchar30否密码specialityvarchar30否所在专业postvarchar30否职称teachcoursevarchar30否所授课程3、管理员表单(manainfo),如表3。3所示.表3.3管理员表单列值数据类型数据长度可否为空描述主键mana_idvarchar30否编号usernamevarchar30否管理员名passwordvarchar30否密码popedomvarchar30否权限4、教学实施计划表单(teachingplan),如表3.4所示。表3.4教学实施计划表单列值数据类型数据长度可否为空描述主键idint11否编号是course_namevarchar30否课程名course_kindvarchar30否课程性质begin_termvarchar30否开课学期begin_specialityvarchar30否开课专业periodvarchar30否学时5、教学班表单(teachclassinfo),如表3.5所示。表3。5教学班表单列值数据类型数据长度可否为空描述主键idint11否编号是specilityvarchar30否专业gradevarchar30否年级stu_numvarchar30否学生人数course_namevarchar30否课程名6、留言板表单(leavewordinfo),如表3.6所示。表3。6留言板表单列值数据类型数据长度可否为空描述主键leave_idint11否留言编号是leave_datedate0否留言日期leave_namevarchar30否留言人姓名leave_contentvarchar2000否留言内容7、课程信息表单(courseinfo),如表3。7所示。表3.7课程信息表单列值数据类型数据长度可否为空描述主键course_idvarchar30否课程编号是course_namevarchar30否课程名称8、选课信息表单(selectcourseinfo),如表3。8所示.表3.8选课信息表单列值数据类型数据长度可否为空描 述主键course_idvarchar30否课程号stu_idvarchar30否选修学生学号teachervarchar30否授课教师achievementvarchar30否成绩系统功能简介此教务管理系统主要由学生功能、教师功能、管理员功能三大模块组成。1、学生功能:本模块具有五项功能:主要用户学生查询自己的学籍信息,也可以在线选课,可以 修改个人的部分信息,修改登录时的密码等.2、教师功能:本模块具有四项功能:通过学生选课,学生修完学时之后,老师就应该给学生所选课程打分,所以在此,添加了 “选课信息”模块,用于老师给学生打分;除了教师给学第12页生打分外,教师可以修改个人部分信息,修改登录时密码,可以查询教学实施计划等。3、管理员功能:本模块具有五项功能:管理员有权限之分,权限为0的管理员为超级管理员,对系 统的所有操作都可以实现,而权限为1的管理员,除了删除信息及修改管理员的权限不能 实现外,其他操作都可以实现;管理员可以管理学生学籍、管理教师、管理课程、管理留 言等。