(完整版)学生管理系统的数据库设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

数据库设计题目思文学生管理系统姓名班级指导教师学期2015年12月21日目录1.需求分析.....................................错误!未定义书签。1.2根据需求确定工作环境......................................32.概念结构设计.................................................42.1概念结构设计的原则.......................................42.2将用户需求模块化.........................................43数据库设计..................................................63.1根据数据信息构建表结构.....................................74.系统功能设计................................................85系统的测试....................................错误!未定义书签。1.1基本需求学生信息管理系统软件,满足以下条件:(1)能完成学生的学籍注册(2)学生若不喜欢此时的专业,他们可以自动调剂专业(3)学生可以选课,并查看个人信息及日常表现情况。(4)对学生信息、课程信息进行记录。(5)管理员可以对学生学籍信息的查询,添加,修改,删除;学生信息及成绩的录入,修改,删除。修改密码等功能。(6)管理员拥有最高的权限。允许添加教师信息和课程信息等。学校需要的就是能满足以上需求的软件。需求就是一套软件的终极目标,但并不是每一个需求都能达到的,分析人员还要根据开发环境一条条地分析这些需求。1.1.1该软件的主要功能(1)对学生信息的管理(2)对教师信息的管理(3)对课程信息的管理(4)对选课信息的管理(5)对成绩的管理(6)对学生的日常表现情况1.2根据需求确定工作环境1.2.1软件环境除了要安装学生管理系统外,还必须具备相应的软件环境,才能更好地运行。(1)应采用统一的软件操作系统(win7),这是为了更好地管理。(2)服务器上安装数据库系统(SQLServer2005),从而实现信息资源安全化管理。(3)安装防病毒软件,病毒防火墙等。因为所有的机器都是互连的,一旦有病毒侵入,容易造成整个系统的瘫痪。2.概念结构设计2.1概念结构设计概念结构设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行大致的设计。概要设计要坚持以下几个原则:(1)细分原则:软件系统都是由很多不同的模块组成,当设计一套软件时,要先将所有的功能分解。解决复杂问题的方法是将其分解成几个小问题,一个个来解决。(2)提高代码重用性:在面向对象设计中,首先考虑的就是代码的重用,一个好的设计,将来在升级换代时不需要太大的改动,节省了人力物力。(3)从上而下层层分析:概要设计要从整体出发,逐个剖析软件的功能,从上而下,先分析系统总的功能,然后一步步细分,直到最小的功能模块。(4)一致性原则:概要设计要求所有功能模块在定义时使用统一的规范。(5)提高独立性,减少耦合:各个模块与模块之间尽量减少关联,否则修改一个地方就会引起其他多处的变动,不符合面向对象的原则。一般情况下,对类封装后,只允许对类进行扩展,而不能修改,而封装的类必须具有单一职责,即理论情况下不允许两个类共同完成一个功能。2.2将用户需求模块化2.2.1确定系统最终模块概要设计中最重要的就是确定此项目包括哪些模块。根据上两节讲述的设计原则和模块特征,将用户需求转化为下面的模块。(1)管理员模块:是本系统的核心模块,该模块又包括对学生管理和课程管理2个子模块,功能如下:学生管理子模块:实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。图3-1学生管理子模块课程管理子模块:实现对课程的添加,实现对课程的修改、删除,查看某个课程的详细信息等。图3-2课程管理子模块(2)教师模块:实现查看自己所教授的课程、课程有哪些学生选修,以及利用本系统提交学生的成绩。查询课程信息删除课程信息修改课程信息课程管理子模块添加课程信息查询学生信息删除学生信息修改学生信息学生管理子模块添加学生信息图3-3教师管理模块(3)学生模块:实现学生的选课,查看、修改自己的选课信息及查看自己日常的表现情况。图3-4学生模块3数据库设计在前面已经罗列出了用户的需求,这也正是数据库信息的来源。根据列表内容,可以提炼出以下数据信息。(1)需要管理学生信息:学生表。(2)需要管理教师信息:教师表。(3)需要管理课程信息:课程表。(4)需要管理管理员信息:管理员表。实体属性表:教师模块查看所授课程录入学生成绩学生模块选课查看选课信息修改选课信息日常表现个人信息实体属性教师教师ID,教师姓名,登录密码课程课程号,课程名称,教师ID管理员管理员ID,管理员姓名、登录密码学生学号,姓名,性别,密码,身份证号,地址、专业数据库E-R图设计:管理员教师学生课程活动奖惩管理管理选课公布授课管理员ID管理员姓名登录密码教师ID教师姓名登录密码学号事件奖励惩处学号姓名性别身份证号时间地点项目加分学号地址专业密码学号课程号课程名成绩总成绩课程号课程名教师ID3.1根据数据信息构建表结构对于如何提取数据表字段,要遵守3个原则。(1)每个字段都是不可再分的最小数据单位。(2)非主键字段必须完全依赖于主键(3)如果两个表存在关联,必须有字段作为外键进行连接。3.2.1数据库表的设计1)用户信息表T_UserInfoUserIDUserIDInt主键用户编号LoginNameVarchar(50)唯一用户名称UserNameVarchar(50)用户密码PasswordVarchar(50)联系电话PhoneVarchar(20)EmailEmailVarchar(50)地址AddressVarchar(200)状态UserStatusInt1可用,0停用所在的部门DeptIDInt所属岗位RoleIDint2)部门信息表T_DeptDeptIDDeptIDInt主键部门编号DeptCodeVarchar(20)唯一部门名称DeptNameVarchar(50)上级部门ParentDeptint联系电话PhoneVarchar(20)地址AddressVarchar(200)3)岗位信息表T_RoleRoleIDRoleIDInt主键岗位编号RoleCodeVarchar(50)唯一岗位名称RoleNameVarchar(50)上级岗位ParentRoleint所属部门DeptIDInt4)学生信息表T_StudentInfoStudentIDStudentIDInt主键学生编号StudentCodeVarchar(50)学生名称StudentNameVarchar(50)专业SpecialtyIDInt联系地址AddressVarchar(200)性别StudentSexInt出生日期StudentBornDatetime籍贯StudentOrigoint联系电话PhoneVarchar(20)身份证号码IDCardVarchar(20)相片ImageUrlVarchar(50)爱好hobbyVarchar(50)状态StudentStatusIDInt(0-9保留,10报到,11参加军训,12入学,20分班,90毕业)政治面貌PoliticalStatusVarchar(50)备注StudentDescVarchar(500)5)城市信息表T_CityCityIDCityIDInt主键城市名称CityNameVarchar(50)上级CityParentCityint级别CityLevelInt6)教师信息表T_TeacherTeacherIDTeacherIDInt主键教师姓名TeacherNameVarchar(20)电话PhoneVarchar(20)性别TeacherSexInt出生日期TeacherBorndatetime专业SpecialtyIDint学历EducationIDint住址AddressVarchar(100)7)班级表信息表T_ClassInfoClassIDClassIDInt主键专业SpecialtyIDInt班级编号ClassCodeVarchar(20)班级名称ClassNameVarchar(50)班级状态ClassStatusIDInt1空闲,2使用,3毕业8)班级学生表T_ClassStudentClassStudentIDClassStudentIDInt主键ClassIDClassIDIntStudentIDStudentIDInt9)班级老师表T_ClassTeacherClassTeacherIDClassTeacherIDInt主键ClassIDClassIDIntTeacherIDTeacherIDInt老师身份TeacherTypeIDInt1班主任2任课老师,3辅导员10)班委信息表T_ClassLeaderClassLeaderIDClassLeaderIDInt主键ClassIDClassIDIntStudentIDStudentIDInt班委身份LeaderTypeIDInt1班长2副班长3学习委员….11)考勤信息表T_AttenceAttenceIDAttenceIDInt主键班级ClassIDInt学期TermIDVarchar(10)考勤类型AttenceTypeIDInt1第一节2第二节,3第三节,4第四节,5晚自习考勤日期AttenceDateDatetime登记人UserIDInt登记时间RegisterTimeDatetime学生StudentIDInt考勤状态AttenceStatusIDInt0正常,1迟到,2早退,3旷课得分Scoreint备注AttenceDescVarchar(200)12)作业信息表T_HomeWorkHomeWorkIDHomeWorkIDint主键班级ClassIDInt学期TermIDVarchar(10)学生StudentIDInt课程CoursesIDInt作业类型HomeWorkTypeIDInt1笔试,2上机得分ScoreInt作业时间HomeWorkDatedatetime批改人TeacherIDInt作业状态HomeWorkStatusIDInt1提交,2批改备注HomeWorkDescVarchar(100)13)考试信息表T_ExamInfoExamIDExamIDint主键班级ClassIDInt学期TermIDVarchar(10)课程CoursesIDInt考试开始时间ExamStartTimeDatetime考试结束时间ExamEndTimeDatetime考试地点ExamAddressVarchar(50)主监考TeacherID1Int副监考TeacherID2Int14)成绩信息表T_ScoreInfoScoreIDScoreIDint主键班级ClassIDInt学期TermIDVarchar(10)学生StudentIDInt课程CoursesIDInt课程得分CoursesScoreInt平时得分NormalScoreInt总得分TotalScoreInt时间ScoreDatedatetime批改人TeacherIDInt备注ScoreDescVarchar(50)15)公告信息表T_NoticeInfoNoticeIDNoticeIDint主键标题NoticeNameVarchar(100)内容NoticeTextVarchar(2000)时间NoticeTimeDatetime类型NoticeTypeInt1政策2新闻3体育浏览次数BrowseCoutInt作者AuthorVarchar(20)排序sortingInt备注Not

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功