《(完整版)学生管理系统的数据库设计.pdf》由会员分享,可在线阅读,更多相关《(完整版)学生管理系统的数据库设计.pdf(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库设计题目题目思文学生管理系统思文学生管理系统姓姓名名班班级级指导教师指导教师学学期期20152015 年年 12 12 月月 21 21日日目录目录1.1.需求分析需求分析.根据需求确定工作环境根据需求确定工作环境.2.2.概念结构设计概念结构设计.概念结构设计的原则概念结构设计的原则.将用户需求模块化将用户需求模块化.3 3数据库设计数据库设计.根据数据信息构建表结构根据数据信息构建表结构.4.4.系统功能设计系统功能设计.5 5 系统的测试系统的测试.错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未
2、定义书签。错误!未定义书签。1.11.1基本需求基本需求学生信息管理系统软件,满足以下条件:(1)能完成学生的学籍注册(2)学生若不喜欢此时的专业,他们可以自动调剂专业(3)学生可以选课,并查看个人信息及日常表现情况。(4)对学生信息、课程信息进行记录。(5)管理员可以对学生学籍信息的查询,添加,修改,删除;学生信息及成绩的录入,修改,删除。修改密码等功能。(6)管理员拥有最高的权限。允许添加教师信息和课程信息等。学校需要的就是能满足以上需求的软件。需求就是一套软件的终极目标,但并不是每一个需求都能达到的,分析人员还要根据开发环境一条条地分析这些需求。1.1.11.1.1 该软件的主要功能(1
3、)对学生信息的管理(2)对教师信息的管理(3)对课程信息的管理(4)对选课信息的管理(5)对成绩的管理(6)对学生的日常表现情况1.21.2根据需求确定工作环境根据需求确定工作环境1.2.11.2.1 软件环境软件环境除了要安装学生管理系统外,还必须具备相应的软件环境,才能更好地运行。(1)应采用统一的软件操作系统(win 7),这是为了更好地管理。(2)服务器上安装数据库系统(SQL Server 2005),从而实现信息资源安全化管理。(3)安装防病毒软件,病毒防火墙等。因为所有的机器都是互连的,一旦有病毒侵入,容易造成整个系统的瘫痪。2.2.概念结构设计概念结构设计2.12.1概念结构设
4、计概念结构设计概念结构设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行大致的设计。概要设计要坚持以下几个原则:(1)细分原则:软件系统都是由很多不同的模块组成,当设计一套软件时,要先将所有的功能分解。解决复杂问题的方法是将其分解成几个小问题,一个个来解决。(2)提高代码重用性:在面向对象设计中,首先考虑的就是代码的重用,一个好的设计,将来在升级换代时不需要太大的改动,节省了人力物力。(3)从上而下层层分析:概要设计要从整体出发,逐个剖析软件的功能,从上而下,先分析系统总的功能,然后一步步细分,直到最小的功能模块。(4)一致性原则:概要设计要求所有功能模块在定义时使用统一的规范。
5、(5)提高独立性,减少耦合:各个模块与模块之间尽量减少关联,否则修改一个地方就会引起其他多处的变动,不符合面向对象的原则。一般情况下,对类封装后,只允许对类进行扩展,而不能修改,而封装的类必须具有单一职责,即理论情况下不允许两个类共同完成一个功能。2.22.2将用户需求模块化将用户需求模块化2.2.12.2.1 确定系统最终模块确定系统最终模块概要设计中最重要的就是确定此项目包括哪些模块。根据上两节讲述的设计原则和模块特征,将用户需求转化为下面的模块。(1)管理员模块:是本系统的核心模块,该模块又包括对学生管理和课程管理2 个子模块,功能如下:学生管理子模块:实现对学生信息的添加、修改、删除操
6、作,还可以输入查询条件进行查询操作。图 3-1 学生管理子模块课程管理子模块:实现对课程的添加,实现对课程的修改、删除,查看某个课程的详细信息等。图 3-2 课程管理子模块(2)教师模块:实现查看自己所教授的课程、课程有哪些学生选修,以及利用本系统提交学生的成绩。图 3-3 教师管理模块(3)学生模块:实现学生的选课,查看、修改自己的选课信息及查看自己日常的表现情况。学生模块个人信息查看选课信息选课图 3-4 学生模块日常表现修改选课信息3 3数据库设计数据库设计在前面已经罗列出了用户的需求,这也正是数据库信息的来源。根据列表内容,可以提炼出以下数据信息。(1)需要管理学生信息:学生表。(2)
7、需要管理教师信息:教师表。(3)需要管理课程信息:课程表。(4)需要管理管理员信息:管理员表。实体属性表:实体属性教师教师 ID,教师姓名,登录密码课程课程号,课程名称,教师ID管理员管理员ID,管理员姓名、登录密码学生学号,姓名,性别,密码,身份证号,地址、专业数据库E-R 图设计:登录密码管理员姓名管理员ID管理员管理教师ID课程名课程号学号事件奖励惩处课程授课教师ID教师姓名教师公布奖惩登录密码学号课程号学生课程名成绩总成绩活动选课管理学号姓名性别身份证号地址专业密码学号时间地点项目加分根据数据信息构建表结构根据数据信息构建表结构对于如何提取数据表字段,要遵守3 个原则。(1)每个字段都
8、是不可再分的最小数据单位。(2)非主键字段必须完全依赖于主键(3)如果两个表存在关联,必须有字段作为外键进行连接。数据库表的设计数据库表的设计1)用户信息表T_UserInfoUserIDUserIDInt主键用户编号LoginNameVarchar(50)唯一用户名称UserNameVarchar(50)用户密码PasswordVarchar(50)联系电话PhoneVarchar(20)EmailEmailVarchar(50)地址AddressVarchar(200)状态UserStatusInt1 可用,0 停用所在的部门DeptIDInt所属岗位RoleIDint2)部门信息表T_D
9、eptDeptIDDeptIDInt主键部门编号DeptCodeVarchar(20)唯一部门名称DeptNameVarchar(50)上级部门ParentDeptint联系电话PhoneVarchar(20)地址AddressVarchar(200)3)岗位信息表T_RoleRoleIDRoleIDInt主键岗位编号RoleCodeVarchar(50)唯一岗位名称RoleNameVarchar(50)上级岗位ParentRoleint所属部门Dept IDInt4)学生信息表T_StudentInfoStudentIDStudentIDInt主键学生编号StudentCodeVarchar
10、(50)学生名称StudentNameVarchar(50)专业SpecialtyIDInt联系地址AddressVarchar(200)性别StudentSexInt出生日期StudentBornDatetime籍贯StudentOrigoint联系电话PhoneVarchar(20)身份证号码IDCardVarchar(20)相片ImageUrlVarchar(50)爱好hobbyVarchar(50)状态StudentStatus IntID(0-9 保留,10报到,11 参加军训,12 入学,20 分班,90 毕业)政治面貌PoliticalStat Varchar(50)us备注St
11、udentDescVarchar(500)5)城市信息表T_CityCityIDCityIDInt主键城市名称CityNameVarchar(50)上级 CityParentCityint级别CityLevelInt6)教师信息表T_TeacherTeacherIDTeacherIDInt主键教师姓名TeacherNameVarchar(20)电话PhoneVarchar(20)性别TeacherSexInt出生日期TeacherBorndatetime专业SpecialtyIDint学历EducationIDint住址AddressVarchar(100)7)班级表信息表T_ClassInf
12、oClassIDClassIDInt主键专业SpecialtyIDInt班级编号ClassCodeVarchar(20)班级名称ClassNameVarchar(50)班级状态ClassStatusID Int1 空闲,2 使用,3 毕业8)班级学生表T_ClassStudentClassStudentI ClassStudentI IntDD主键ClassIDClassIDIntStudentIDStudentIDInt9)班级老师表T_ ClassTeacherClassTeacherI ClassTeacherI IntDD主键ClassIDClassIDIntTeacherIDTeac
13、herIDInt老师身份TeacherTypeID Int1班主任2任课老师,3 辅导员10)班委信息表T_ClassLeaderClassLeaderID ClassLeaderID Int主键ClassIDClassIDIntStudentIDStudentIDInt班委身份LeaderTypeIDInt1班长2副班长3 学习委员.11)考勤信息表T_AttenceAttenceIDAttenceIDInt主键班级ClassIDInt学期TermIDVarchar(10)考勤类型AttenceTypeID Int1第一节2第二节,3 第三节,4 第四节,5 晚自习考勤日期AttenceDa
14、teDatetime登记人UserIDInt登记时间RegisterTimeDatetime学生StudentIDInt考勤状态AttenceStatus IntID0 正常,1 迟到,2 早退,3 旷课得分Scoreint备注AttenceDescVarchar(200)12)作业信息表T_HomeWorkHomeWorkIDHomeWorkIDint主键班级ClassIDInt学期TermIDVarchar(10)学生StudentIDInt课程CoursesIDInt作业类型HomeWorkTypeID Int1 笔试,2 上机得分ScoreInt作业时间HomeWorkDatedate
15、time批改人TeacherIDInt作业状态HomeWorkStatus IntID1 提交,2 批改备注HomeWorkDescVarchar(100)13)考试信息表T_ExamInfoExamIDExamIDint主键班级ClassIDInt学期TermIDVarchar(10)课程CoursesIDInt考试开始时间ExamStartTime Datetime考试结束时间ExamEndTimeDatetime考试地点ExamAddressVarchar(50)主监考TeacherID1Int副监考TeacherID2Int14)成绩信息表T_ScoreInfoScoreIDScore
16、IDint主键班级ClassIDInt学期TermIDVarchar(10)学生StudentIDInt课程CoursesIDInt课程得分CoursesScoreInt平时得分NormalScoreInt总得分TotalScoreInt时间ScoreDatedatetime批改人TeacherIDInt备注ScoreDescVarchar(50)15)公告信息表T_NoticeInfoNoticeIDNoticeIDint主键标题NoticeNameVarchar(100)内容NoticeTextVarchar(2000)时间NoticeTimeDatetime类型NoticeTypeInt
17、1 政策 2 新闻 3体育浏览次数BrowseCoutInt作者AuthorVarchar(20)排序sortingInt备注NoticeDescVarchar(1000)16)系统编码表T_SysCode(可以配置专业类型,公告类型,考勤类型,作业类型,考勤状态,班委身份,老师身份,班级状态,学生状态(0-9保留,10报到,11参加军训,12入学,20分班,90毕业),课程(),学历)SysCode IDSysCodeIDint主键系统编码SysCodeVarchar(100)参数值SysValueint参数显示文本SysTextVarchar(50)上级 IDParentSysCodeID
18、Int4.4.系统功能设计系统功能设计系统功能框架系统功能框架作为一个学生管理系统,本系统的设计主要包含:系统登录、学生信息管理、班级管理、课程管理和用户管理。学生管理系统主框架的主要结构如下图所示。思文学生管理系统系统公告学生信息添加学生信息显示学生管理学生信息修改班级添加班级管理添加考勤信息考勤管理显示考勤信息添加作业信息作业管理查看作业信息添加老师姓信息老师管理显示老师信息添加成绩信息成绩管理修改成绩信息显示成绩信息系统管理关于我们班级显示添加用户信息显示用户信息添加岗位信息显示岗位信息添加部门信息添加城市信息图 7-1学生管理系统框架图学生管理系统登录子系统学生管理系统登录子系统学生管
19、理系统登录子系统功能描述学生管理系统登录子系统功能描述根据用户权限的不同,可以以不同的身份登录学生管理系统。用户的权限为:管理员、教师、学生。其中,管理员为完全权限,可以使用学生管理系统的所有功能;教师为部分权限,不具有使用“学生选课”、“课程修改”功能,并且只能修改本人的用户名和密码;学生为部分权限,具有“选课”、“查看个人信息”和“课程查询”功能,其他模块只具有查询功能,并且只能修改本人的用户名和密码。在用户登录时,通过用户所输入的用户名和密码来验证用户的登录信息,并判断用户的权限,根据不同的权限打开不同的系统主页面。学生管理系统学生管理系统学生管理系统主界面功能描述学生管理系统主界面功能
20、描述根据学生管理系统的主框架。我们设计了学生管理系统主界面,分别由:学生信息管理、课程管理、用户管理、退出等 5 个部分构成。学生信息管理子系统学生信息管理子系统课程管理子系统课程管理子系统课程管理子系统功能描述课程管理子系统功能描述课程管理子系统对课程信息进行管理,能够录入课程的相关信息,并指定该门课程的任课教师,以供学生选择。课程管理子系统由:课程录入、课程修改和课程查询三部分组成。课程录入界面由文本框、下拉菜单和按钮组成。用户输入课程名称和该课程的学分,并根据所属专业来选择该门课程的任课教师,提交到数据库。课程修改界面相关控件布局与课程录入界面相同,用户根据需要修改课程信息后点击修改按钮
21、完成修改操作。课程管理界面由两部分组成查询信息输入部分和查询信息显示部分。其中,查询信息输入部分提供了三种不同的查询方式:按课程名称查询、按专业查询、按学分查询。用户需先选择查询方式,然后设置查询条件,点击查询按钮实现查询操作。查询出的信息将显示在界面下半部分的列表中。用户可以选择列表中的信息进行修改或删除操作。用户管理子系统用户管理子系统用户管理子系统功能描述用户管理子系统功能描述用户管理子系统对系统的用户信息进行管理,能够根据不同的用户权限,实现系统用户的注册、密码修改、删除用户等操作。5 5 系统的测试系统的测试测试是为了更好地完成项目的功能,虽然测试并不能完全模拟实际发生的流程,但可以降低错误的发生概率,提高软件项目的稳定性。