河南城建学院《数据库原理》课程设计报告课程名称:《数据库原理》课程设计设计题目:国家奖学金评定系统指导教师:班级:学号:学生姓名:同组人员:计算机科学与工程学院2014年6月8日目录第1章概述 (2)1.1选题的背景与意义...................................... 错误!未定义书签。
1.2相关技术分析 (1)第2章系统功能设计 (3)2.1系统总体结构设计 (3)2.2查询模块的数据流图 (3)2.3数据字典 (4)第3章数据库设计 (6)3.1需求分析 (6)3.2数据库概念结构设计 (6)3.3数据库逻辑结构设计 (9)第4章数据库维护与查询 (11)4.1创建数据库SCHOLAR (11)4.2创建表 (12)4.3创建索引 (13)4.4创建视图 (14)4.5创建用户 (15)第5章结束语 (19)参考文献 (19)第1章概述1.1 选题的背景与意义1.1.1学生综合测评的现状分析在素质教育评价过程中,学生综合测评是高校普遍采用的评价手段。
对学生实施综合素质测评的目的在于正确评价学生的综合素质,为评优评奖和推荐就业提供依据,实现学生教育管理工作的标准化、制度化和科学化,引导和促进学生德、智、体、能全面协调发展,培养适应社会经济发展需要,具有创新精神和实践能力的专门人才。
目前,我国的普通高校学生综合测评大多还停留在纸质的基础上,许多工作还停留在传统的手工操作。
不仅浪费了大量的人力物力资源,而且由于人工管理存在着许多不可控因素,导致学生综合测评操作不规范,测评结果不全面,不能客观准确地反映学生的综合素质。
因此,建立一套基于网络环境的技术先进、高效稳定、安全可靠的学生综合测评系统势在必行。
1.1.2学生综合测评系统的开发意义与传统的手工管理相比,计算机管理不但能发挥计算机方便、快捷的功能,而且可以大量节省了资源、费用等,更方便灵活操作,而且方便管理,增加综合测评的公平性、透明性,有效防止综合测评的弊端,使学生综合测评更加合理、更趋于成熟。
因此,开发一套比较成熟的学生综合测评系统很有必要。
综合测评系统开发的目的是自动分析、计算、统计、管理学生综合测评数据,减少人工干预,降低计算失误,提高工作效率,将辅导员、班主任、班委从繁重的综合测评及日常管理中解放出来,使学校的综合测评工作系统化、规范化、自动化。
1.2相关技术分析对于我们三个成员来说,以前都做过一些课程设计,具有一定的程序设计经验,学习过程序设计的相关知识,而且现在也具备了设计宿舍管理系统程序所需的SQL知识,同时,在学校这么一个特殊的环境中,我们遇到问题时可以有许多时间进行经验交流和去图书馆查阅资料,以及上网查找资料和请教老师。
无论从硬件或是软件上来说,建立此奖学金评定系统是可行的。
从软件开发方面来看,本系统是一个基于SQL SERVER 2008的应用程序。
目前SQL SERVER 2008开发工具已经十分成熟,利用现有的技术可以完成系统所技术往往是系统开发过程中难度最大的工作,开发人员在给定的约束条件下,判断是否能在预定的时间顺利完成任务,综合各方面的困素,我们选择的是SQL SERVER 2008,都是组员学过的语言。
要求的全部功能目标。
考虑到开发时间较为紧张,但仍然可以在规定时间内完成开发。
运行方面,目前学校的计算机系实验室设施较为完善,网络充分,学校计算机系实验室的机房和服务器,可以很方便的运行该奖学金评定系统。
第2章系统功能设计2.1系统总体结构设计2.2查询模块的数据流图:2.2.1总的数据流图2.3数据字典2.3.1数据项数据项是数据的最小单位,其内容包括数据项名﹑类型﹑长度。
2.3.2数据结构数据结构是有意义的数据项集合。
内容包括:数据结构名,这些内容组成数据项名。
2.3.3数据流数据流可以是数据项,也可以是数据结构,它表示某一过程中数据在系统内传输路径。
内容包括:数据流名,说明,流入过程,流出过程,这些内容组成数据项或数据结构。
2.3.4数据存储数据存储是数据结构停留或保存的地方,也是数据数据流的来源和去向之一。
内容包括:数据存储名,输入数据流,输出数据流。
这些内容组成数据项或数据结构,数据量,存取频度,存取方式。
2.3.5数据处理处理过程的处理逻辑通常用判定表或判定树来描述,数据字典只用来描述处理过程的说明性信息。
处理过程包括:处理过程名,说明,输入(数据流),输出(数据流)和处理(简要说明)第3章数据库设计3.1 需求分析学生综合测评系统可以及时、准确、公平地计算出学生的综合测评结果。
利用计算机对学生综合素质进行测评具有手工测评无法实现的优点。
例如:数据处理自动化、管理规范、操作便捷、可靠性高等。
学生综合测评系统的用户群可分为普通用户(学生)和管理员,系统功能定义根据两种不同的用户身份进行需求分析。
3.1.1 按角色需求分析1.学生需求学生既是综合测评的对象,也是综合测评的主体。
学生可以查询并维护自己的个人档案,同时参加其他同学的综合测评。
学生对功能上的需求主要有:(1)查询学校、学院、班级发布的种类消息和公告;(2)查询课程信息和考试成绩;(3) 更新和维护自己的个人信息,查看其他同学的信息;(4) 查询自己的测评结果,查看本班测评结果统计信息2.测评员需求测评员按身份级别可分为班委(测评小组)、辅导员。
测评员除具备学生需求的功能外,按照不同身份还具备以下不同的权限。
(1) 班委:学生个人信息的录入和修改,各学期课程信息的录入和修改,学生综合测评结果的统计和修改。
操作权限范围是本班同学。
(2) 辅导员:辅导员除了具备班委的权限外,还要负责对学生奖惩情况的核实,相关数据的维护。
操作权限范围是本学院全体学生。
3.2 数据库概念结构设计分E—R图1.学生——课程2.学生——课程3.学生——奖学金4.班级——系学生——班级3.3 数据库逻辑结构设计学生(学号,姓名,性别,所在系号,班级);(3NF)课程(课程号,课程名,学分);(3NF)系(系号,系名,系简介);(3NF)班级(班号,班名,系);(3NF)综合测评(学号,课外量化,校级奖学金,省级奖学金);(3NF)奖学金(等级,金额);(3NF)3.4 安全性和完整性设计3.4.1 学生表3.4.2班级表3.4.3系表3.4.4 课程表3.4.5 选课表3.4.6 综合测评3.4.7奖学金第4章数据库维护与查询4.1创建数据库scholar4.2创建学生表4-2-1建一个空学生表4-2-2学生表内容4.3创建课程表4-3-1建立一个空的课程表4-3-2课程表内容4.4创建选课表4-4-1建立一个空的选课表4-4-2选课表内容4.5创建综合测评表4-5-1建立一个空的综合测评表4-5-2综合测评表内容4.6创建奖学金4-6-1建立一个空的奖学金表4-6-2奖学金表内容4.7创建系表4-7-1建议一个空的系表4-7-2系表内容4.8创建表后4.9创建用户赋予权限并收回权限4.10创建索引1.Create unique index s1 on student2(sno);2.Create unique index s2 on course(cno);3.Create unique index s3 on sc(sno asc,cno desc);4.11创建触发器4.12创建学生视图create view v_studentasselect sno,sname,ssex,sdeptfrom student4.13创建学生综合测评视图create view v_zongheasselect sno,provincerewar,schoolscorefrom zonghe4.14 创建系院表视图create view v_deptasselect dno,dname,dintrofrom dept4.15创建选修课表视图Create view v_scasselect sno,cno,gradefrom sc4.16创建奖学金视图create view v_jiangxuejinasselect sno,type,amoutfrom jiangxuejin4.17视图创建好后4.18完整性约束Alter table student add constraint c1 check(ssex in(‘男’,‘女’));Alter table course add constraint c2 check(ccredit between 0 and 2);Alter table sc add constraint c3 check(grade between 0 and 100);结果显示第5章结束语心得体会:在数据库这门课的学习期间,自己对数据库的理解只是理论上的,没有具体的实际应用,通过课程设计,自己对学习数据库的作用有了更深的理解,增强了自己学习数据库的积极性,在数据库的需求分析阶段,通过与宿舍管理员的交流,对学校对系统地处理要求,信息要求以及安全性完整性要求有了一定的了解,与此同时自己的交流能力也有了一定的提高,在建立数据字典的初期由于对数据字典的内容了解不够,只是建立了数据项,后来经过老师的指导,自己又查阅资料自己对数据字典又进行了一定的完善。
在确定各个实体的属性、主码等信息时由于自己的经验不足,对各个实体的属性进行了数次的修改在设计初期总是会出现这样或那样的错误,各个表之间总是很难建立联系,后来通过对实体信息的充分了解以及自己查阅资料,最终确定了实体及其关系的各个属性。
在设计过程中我熟悉了一新的编程语言,SQL语言,对数据库的概念和使用,有了更深的认识,所有的这些,使我充实了知识,扩大了知识面,提高了自学能力。
由于本次的学习,了解到自己还有很多不尽人意的地方,比如,对SQL的一些深入了解甚浅,对系统分析的能力不强,也不能实现系统的全部功能,使得在前期的设计比较艰难,显的有点简单,不能实现复杂的功能….参考文献1.王珊,陈红﹒数据库系统原理教程[M]2.陈志泊,王春玲数据库原理及应用教程(第二版)。