版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、成绩:_数据库原理及应用课程设计课题 数据库课程设计之学生管理系统 班级 学号姓名 指导教师 2012 年 6 月 25 日2012年 6 月 29 日目录前言3概述3项目背景3编写目的3定义3开发环境4需求分析5问题陈述5功能需求5运行需求5数据流图6存储说明9数据字典10概念结构设计13逻辑结构设计17软件功能设计21代码设计和界面设计24小结32参考文献33附录33前言网络的兴起和巨大发展对人们的生活方式产生了深远的改变,通过互联网络,人们获得了一个更加便捷更加广阔的获取有用信息的途径,人们可以足不出户坐在电脑前便可以做很多事情。而数据库系统的不断发展与完善,则让互联网络在人们生活中的应
2、用如虎添翼,因为随着越来越多的人认识到WEB网络给我们日常生活带来的巨大便利,WEB应用的用户也在爆炸式增长,在方便我们生活的同时,许多问题也接踵而至,越来越庞大的数据量让工作人员不堪重负,无论在建立数据库和维护数据库方面,近几个月来,CSDN、天涯等知名IT企业相继出现数据库信息泄露事件向我们昭示了数据库安全方面所面临的严峻挑战。可见,建立安全高效的高性能数据库是我们要为之不懈努力的方向。为了更好地掌握数据库相关知识,我们针对学生管理问题,运用所学到的数据库知识,在老师的指导下建立了一个简易的模仿教务工作的WEB应用系统,该论文就是主要针对所用到的数据库设计过程进行简要的论述。概述项目背景随
3、着经济的发展,“科教兴国”战略的提出,人们对教育变得越来越重视,国家也加大了对教育的投入,大学中学的入学学生逐年增加,为了减轻教务人员的工作负担,节省时间和经费,提高教务工作的执行效率,几乎所有的大学运用近几年逐步兴起的WEB应用技术和数据库技术相结合,建立学校教务系统。为了更好地理解数据库系统所起的作用和实践数据库设计的过程,基于学校教务系统的基本流程,我们尝试着建立了学生管理系统,这个系统主要包括三大部分:学生信息管理系统、学生选课系统和学生成绩管理系统。模拟了学校教务系统的主要部分。该项目的执行者为数据库课程设计小组。编写目的这个学生管理系统实现了以下功能:学生、教师、管理员三种身份的数
4、据库访问控制,学生管理个人信息,学生选择课程,学生查询课程成绩,教师录入课程成绩,管理员拥有最高权限等。编写该课程设计报告的目的在于帮助读者对该系统的设计过程充分了解,该文档尤其对该系统中数据库的设计结构、工作流程和设计原理做了详细的描述和说明。希望能够对读者有所帮助。定义JSP+JavaBean:JSP就是在HTML中嵌入Java代码,所以在本质上JSP程序就是Java程序,JSP程序继承了Java的一切优点。JSP程序有严格的Java语法和丰富的Java类库支持。jsp作用主要是负责页面展现,java负责逻辑,业务处理,JSP是把JAVA代码嵌套到HTML中,让服务器端跟客户端实现动态沟通
5、。相对于ASP,PHP等其他WEB编程语言,JSP具有许多的优势,例如,运行速度快,占用空间小,安全性好,支持大多数运行环境,函数支持多,厂商支持多,支持XMl等。使用JAVABean是JSP的一大特征和优势体现,它是遵循一定标准、用Java语言编写的一个类,该类的一个实例称为一个JavaBean,简称bean 。JAVABean对具体的业务逻辑实现了封装,大大增强了JSP的安全性和可维护性。MySQL:是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高
6、了灵活性。MySQL的SQL“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言。MySQL软件采用了GPL(GNU通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。开发环境操作系统:windows 7开发语言:JSP+JavaBean数据库:MySQL浏览器:IE浏览器需求分析问题陈述功能需求1. 用户登录:任何用户只有在登陆之后才能够进入系统,不同用户登陆后进入对应的界面。2. 个人信息管理:学生、教师、管理员注册登陆后可以完善、修改个人基本信息。3. 学生选课管理:管理员录入可选
7、课程信息,学生登陆后可以进行选课操作。4. 学生成绩管理:教师录入成绩,学生可以查询成绩。不允许修改成绩。运行需求1 安全性:该系统应当有良好的权限控制和身份认证机制,各模块页面之间的通信跳转应该是高效简洁安全的。2 可维护性:当出现故障时,系统应当在规定时间内被较容易地排除故障,数据库出现故障时可以通过数据库恢复备份技术进行恢复。3 健壮易用性:该系统应当具有适当的容错排错性,对用户的非法操作能够给出提示信息而不是卡死或崩溃,能够使初次使用的用户也可以轻易地掌握操作方法。数据流图全局0层数据流图:成绩管理1层数据流图:选课管理1层数据流图:个人信息管理1层数据流图:存储说明学生信息表:字段名
8、描述数据类型是否允许为空是否为主键Stu_id学生编号bigint(20)否否(自增)Stu_no学生学号varchar(20)否是Stu_password密码varchar(50)否否Stu_name姓名varchar(50) 否否Sex性别nvarchar(1)否否Collage学院名nvarchar(10)否否Profession专业名nvarchar(10)否否Stu_birthday出生日期nvarchar(10)否否Admission_time入学时间nvarchar(10)否否教师信息表:字段名描述数据类型是否允许为空是否为主键Teacher_no教师工号bigint(20)否是
9、Teacher_password密码varchar(50)否否Teacher_name姓名varchar(50) 否否Sex性别nvarchar(1)否否管理员信息表:字段名描述数据类型是否允许为空是否为主键Admin_no管理员工号bigint(20)否是Admin_no_password密码varchar(50)否否Admin_no_name姓名varchar(50) 否否Sex性别nvarchar(1)否否课程信息表:字段名描述数据类型是否允许为空是否为主键Course_no课程号bigint(20)否是Course_name课程名varchar(50)否否Course_credit学分
10、DEC(2,0)否否Course_hours学时DEC(2,0)否否Course_teach_no教师工号bigint(20)否否成绩信息表:字段名描述数据类型是否允许为空是否为主键Stu_no学生学号bigint(20)否是Course_no课程号bigint(20)否是Grade_grade成绩DEC(4,1) 否否数据字典数据流DD表:学生信息数据字典数据流系统名:学生管理系统 编号:条目名:学生信息 别名:来源:管理员录入 去处:D1数据流结构:学生信息=学生编号+学生学号+密码+姓名+性别+学院名+专业名+出生日期+入学时间简要说明:密码可有学生修改修改记录: 编写 日期 审核 日期
11、教师信息数据字典数据流系统名:学生管理系统 编号:条目名:教师信息 别名:来源:管理员录入 去处:D2数据流结构:教师信息=教师工号+密码+姓名+性别简要说明:密码可有教师修改修改记录: 编写 日期 审核 日期管理员信息数据字典数据流系统名:学生管理系统 编号:条目名:管理员信息 别名:来源:管理员录入 去处:D3数据流结构:教师信息=管理员工号+密码+姓名+性别简要说明:修改记录: 编写 日期 审核 日期课程信息数据字典数据流系统名:学生管理系统 编号:条目名:课程信息 别名:来源:管理员录入 去处:D4数据流结构:课程信息=课程号+课程名+学分+学时+教师工号简要说明:修改记录: 编写 日
12、期 审核 日期成绩信息数据字典数据流系统名:学生管理系统 编号:条目名:成绩信息 别名:来源:系统产生,教师录入 去处:D5数据流结构:成绩信息=学生学号+课程号+教师工号+成绩简要说明:学生学号,课程号,教师工号由系统产生,成绩由教师录入修改记录: 编写 日期 审核 日期数据存储DD表:学生信息数据字典数据存储系统名:学生管理系统 编号:D1条目名:学生信息表 别名:存储组织: 记录数:约2000 主关键字:学生编号 数据量:约1M辅关键字:按学生编号主索引记录组成:字段名称:学生编号 学生学号 密码 姓名 性别 学院名 专业名宽度:202050 50 1 10 10字段名称:出生日期 入学
13、时间宽度: 10 10 简要说明:修改记录: 编写 日期 审核 日期教师信息数据字典数据存储系统名:学生管理系统 编号:D2条目名:学生信息表 别名:存储组织: 记录数:约200 主关键字:教师工号 数据量:约40K 辅关键字:按教师工号主索引记录组成:字段名称:教师工号 密码 姓名 性别宽度: 2050 50 1 简要说明:修改记录: 编写 日期 审核 日期管理员信息数据字典数据存储系统名:学生管理系统 编号:D3条目名:管理员信息表 别名:存储组织: 记录数:约10 主关键字:管理员工号 数据量:约2K 辅关键字:按管理员工号主索引记录组成:字段名称:管理员工号 密码 姓名 性别宽度: 2
14、050 50 1 简要说明:修改记录: 编写 日期 审核 日期课程信息数据字典数据存储系统名:学生管理系统 编号:D4条目名:课程信息表 别名:存储组织: 记录数:约400 主关键字:课程号 数据量:约80K 辅关键字:按课程号主索引记录组成:字段名称:课程号 课程名 学分 学时 教师工号宽度: 2050 2220简要说明:修改记录: 编写 日期 审核 日期成绩信息数据字典数据存储系统名:学生管理系统 编号:D5条目名:成绩信息表 别名:存储组织: 记录数:约20000 主关键字:学生学号、课程号 数据量:约3M 辅关键字:按学生学号、课程号主索引记录组成:字段名称:学生学号 课程号 成绩宽度
15、: 20204简要说明:修改记录: 编写 日期 审核 日期概念结构设计整体ER图:教师实体ER图:学生实体ER图:管理员实体ER图:课程实体ER图:成绩实体ER图:录入成绩ER图:选课ER图:查询成绩ER图录入教学计划ER图逻辑结构设计(1) 学生实体集转换为关系Student(Stu_no,Stu_id,Stu_password,Stu_name,Sex,Collage,Profession,Stu_birthday,Admission_time);(2) 教师实体集转换为关系Teaher(Teacher_no,Teacher_password,Teacher_name,Sex);(3) 管
16、理员实体集转换为关系Admin(Admin_no,Admin_no_password,Admin_no_name,Sex);(4) 课程实体集转换为关系 Course(Course_no,Course_name,Course_credit,Course_hours,Course_teach_no);(5) 成绩实体集转换为关系 Grade(Stu_no,Course_no,Grade_grade);(6) 录入成绩联系转换为关系 Entry_grade(Grade_stu_no, Grade_cou_no, Grade_grade);(7) 查询成绩联系转换为关系 Query_grade(St
17、u_no, Course_no, Grade_grade);(8) 录入教学计划联系转换为关系 Entry_plan(Admin_no,Course_no,Course_name,Course_credit,Course_hours,Course_teach_no);说明:在第六个关系中,教师工号可以由课程号决定,因为录入成绩的老师即为本门课程的教学老师。 注:ER图转化为关系模式的一般方法一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。一个m:n联系转换为一个关系模式。与该联系相连的各
18、实体的码以及联系本身的属性均转换为关系的属性。而关系的码为各实体码的组合。根据第几范式的判断方法,前4个关系的键均为单一属性,并且由键决定其他属性,显然前四个关系均为BCNF;对于第5个关系,Grade_stu_no, Grade_cou_no为键,存在函数依赖Grade_stu_no, Grade_cou_no->Grade_grade,决定子为超键,所以也是BCNF;同理,第6、7个关系也为BCNF;对于第8个,存在的任意非平凡函数依赖决定子均为Admin_no, Course_no,故也是BCNF。为了提高搜索效率,我们通常会基于对应的键码建立索引,即主关键字;Student(St
19、u_no); Teaher(Teacher_no); Admin(Admin_no); Course(Course_no); Grade(Grade_stu_no, Grade_cou_no );Entry_grade(Grade_stu_no, Grade_cou_no); Query_grade(Grade_stu_no, Grade_cou_no); Entry_plan(Admin_no, Course_no).部分建立表和定义索引的语句为:创建学生信息表:Create table student(Stu_idbigint(20) not null,Stu_novarchar(20)
20、not null,Stu_passwordvarchar(50) not null,Stu_namevarchar(50) not null,Sexnvarchar(1) not null,Collagenvarchar(10) not null,Professionnvarchar(10) not null,Stu_birthdaynvarchar(10) not null,Admission_timenvarchar(10) not null,Primary key(Stu_no);创建成绩信息表Create table grade(Stu_novarchar(20) not null,C
21、ourse_novarchar(20) not null,Grade_gradeDEC(4,1) not null,Primary key(Stu_no,Course_no),Foreign key(Stu_no)References studentOn delete cascade,Foreign key(Course_no)References courseOn delete restrict);为成绩信息表建立索引:Create index FK1 on grade(Stu_no)Create index FK2 on grade(Course_no)建立触发器:CREATE TRIGG
22、ER autodeleteBEFORE DELETEON studentFOR EACH ROWdelete from grades where sno=OLD.UserNo;定义视图视图是从一个或多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。视图不是真实存在的基础表而是一张虚表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。举例:定义视图view1,表示学生的成绩,其中包括名字,课程名,成绩;Create view view1(Stu_name,Course_name,Grade_grade)As select Stu_name,Course_name,Grade_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年云南理工职业学院单招职业技能测试题库及答案详解(网校专用)
- 2026年丽水职业技术学院单招职业技能考试题库含答案详解(培优)
- 2026年云南交通职业技术学院单招职业技能测试题库及答案详解(夺冠)
- 2026年仙桃职业学院单招职业适应性考试题库含答案详解(达标题)
- 2026年三亚中瑞酒店管理职业学院单招职业技能考试题库及一套完整答案详解
- 2026年云南交通运输职业学院单招职业技能测试题库及答案详解(夺冠系列)
- 2026年云南国防工业职业技术学院单招职业倾向性考试题库附答案详解(模拟题)
- 2026年中山火炬职业技术学院单招职业倾向性考试题库完整参考答案详解
- 2026年上海财经大学浙江学院单招职业技能考试题库附参考答案详解ab卷
- 2026年三亚城市职业学院单招综合素质考试题库及答案详解参考
- 2025至2030中国航空发动机关键零部件国产化突破与投资价值评估报告
- 2026年《必背60题》党校教师高频面试题包含详细解答
- 安全监察队伍培训班课件
- 儿科用药错误PDCA根因与改进
- 2025年重庆基层法律服务考试真题及答案
- 血液透析患者出血风险的防范
- 农业服务中心培训课件
- 高考数学解答题:圆锥曲线的综合应用(10大题型)学生版
- 2024-2025学年下学期高一物理教科版期中必刷常考题之斜抛运动
- 《建筑装饰设计收费标准》(2024年版)
- 山东省潍坊市普通高中2025届物理高三第一学期期末调研模拟试题含解析
评论
0/150
提交评论