您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 数据库课程设计_学生学籍管理系统设计与实现
数据库原理及应用课程设计学生学籍管理系统设计与实现学生姓名学号班级指导教师2010年12月28日课程设计任务书2010—2011学年第一学期专业:信息与计算机科学学号:姓名:课程设计名称:数据库原理及应用课程设计设计题目:学生学籍管理系统设计与实现完成期限:自2010年12月20日至2010年12月31日共2周设计依据、要求及主要内容:通过对学校学籍管理业务进行分析、调查,设计学生学籍管理系统。主要内容及要求如下:(1)建立数据库根据系统功能设计的要求以及功能模块的划分,设计相关数据库。(2)学生信息管理模块实现学生基本情况的录入、修改、删除等基本操作;对学生基本信息能提供灵活的查询方式。(3)学生成绩管理模块实现学生成绩的录入、修改、删除等基本操作;能方便的对学生的各个学期成绩进行查询。(4)完成一个班级的学期选课功能。(5)统计功能;系统具有成绩统计、排名等功能。关键词:SQL2000server;VC程序设计;学生学籍管理系统;11课题描述随着社会的发展,基本上所有的具有一定数量数据的企事业单位或机关部门都开始使用计算机数据库来做管理。在各大中小学校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性,提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。该课程设计要求设计一个学籍管理的数据库系统,数据库中包含学生的基本信息,学校院系信息,班级信息以及课程设置的信息。同时还要设计它们之间的关系,如学生与课程关系和学生的成绩等,最后还要对一些数据进行查询,如查询学生成绩的各种集合等。而本系统的开发,为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:第一,本系统的运行可以代替人工进行许多繁杂的劳动;第二,本系统的运行可以节省许多资源;第三,本系统的运行可以大大的提高学校的工作效率;第四,本系统可以使敏感文档更加安全,等等。我们通过该课程设计,应该达到的目的是把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。2需求分析需求分析就是分析用户的要求。在需求分析阶段,系统分析员将分析结果用数据流程图和数据字典表示。需求分析的结果是否能够准确地反用户的时间要求,将直接影响到后面各个阶段的设计,并影响到系统的设计是否合理和使用。本次设计的基于SQLServer数据库技术实现学生学籍的管理,适合一般用户的需要。2.1信息需求分析学生:学号,姓名,所在系,班号,性别,民族,出生日期,家庭住址等课程:课程号,课程名,课程类型,课程老师等班级信息:班号,年级,班主任等成绩信息:学生姓名,学生学号,课程名,班号,成绩,考试编号等。2.2功能需求分析系统要实现的主要功能有:(1)建立数据库根据系统功能设计的要求以及功能模块的划分,设计相关数据库。(2)学生信息管理模块实现学生基本情况的录入、修改、删除等基本操作;对学生基本信息能提供灵活的查询方式。(3)学生成绩管理模块实现学生成绩的录入、修改、删除等基本操作;能方便的对学生的各个学期成绩进行查询。(4)完成一个班级的学期选课功能。(5)统计功能;系统具有成绩统计、排名等功能。22.3数据流图数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。使用逐步求精的方法,从顶层流程图逐一分解,到最终流程图。经过详细的调查,弄清了业务流程,在此基础上,构造出系统的逻辑模型,并通过数据流图表示。如下图342.4数据字典数据字典(Datadictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。数据字典有一下几个要点:数据项:数据项是不可再分的数据单位,它直接反映事物的某一特征。数据结构:反映了数据之间的组合关系。数据流:数据流是数据结构在系统内传输的路径。数据文件:数据文件是数据项停留或保存的地方,也是数据流的来源和去向之一。本系统所需有的数据字典卡片列表如下:名字:学生学籍信息别名:描述:学籍管理中存储的所有学生信息(包括所有学生查询的所需信息)定义:学生信息=学生学号+学生姓名+学生性别+所在系+学生班号+出生日期+民族+家庭住址位置:存储输出供查询名字:课程信息别名:描述:学校开设的课程的基本信息定义:课程信息=课程名称+课程编号+课程类型+课程老师位置:存储输出供选择5名字:成绩信息别名:描述:学生课程的考试成绩定义:成绩信息=考试编号+选择班号+选择学号+学生姓名+课程号+得分位置:存储输出供查询名字:查询信息描述:用户所提出的查询请求定义:查询信息=[学生信息查询信息|课程得分查询信息]学生信息查询信息=[学生姓名|学生学号|学生班号]课程得分查询信息=[学生姓名|学生学号|学生班号]位置:学生学籍管理系统课程得分管理系统名字:查询结果描述:系统完成用户查询请求后所得结果定义:查询结果=[学生信息查询信息|课程得分查询信息|选课信息查询信息]学生信息理查询结果=学生学号+学生姓名+学生性别+所在系+学生班号+出生日期+民族+家庭住址课程得分理查询结果=考试编号+选择班号+选择学号+学生姓名+课程名称+得分位置:学生学籍管理系统课程得分管理系统数据项如下:属性名类型长度位置字段值约束含义说明学号字符型10学生表NotNull唯一标识每个学生姓名字符型10学生表用来表示每个学生的姓名性别字符型2学生表来表明学生的性别{男,女}出生日期字符型12学生表来说明学生的出生日期班号字符型10学生表确定每个学生所在班的班号民族字符型10学生表表明学生所属民族所在系字符型10学生表说明学生所属的系别地址字符型6学生表确定学生地址6属性名类型长度位置字段值约束含义说明课程编号字符型10课程表NotNull唯一标识一门课程课程名称字符型20课程表标识课程的名称课程类型字符型4课程表说明课程的类型{必修,选修}课程老师字符型10课程表标识每门课程的任课老师属性名类型长度位置字段值约束对应中文属性名班号字符型10班级表NotNull说明学生说在班级的班级号年级字符型4班级表NotNull它可以和班号一起唯一标识一个班班主任字符型20班级表NotNull用来说明每个班级的负责人属性名类型长度字段值约束位置含义说明用户名称字符型10NotNull用户表标识登录用户的名称用户密码字符型10NotNull用户表标识登录用户的密码对应中文属性名类型长度字段值约束位置含义说明考试编码字符型10NotNull成绩表唯一标识考试的编码学号字符型10NotNull成绩表标识考试的学生的学号学生姓名字符型10成绩表标识学生姓名班号字符型10NotNull成绩表标识学生所在班班号课程号字符型10NotNull成绩表标识学生选课课程号成绩字符型10成绩表标识学生考试成绩73系统设计系统设计的任务是确定系统的数据模式、功能结构和系统结构,确定系统支持环境、实现方法和技术。系统设计的基本内容为:(1)选择数据库管理系统,建立数据模式。(2)选择系统支持环境,包括支持系统运行的硬件和软件要求,确定系统实现功能和方法。(3)选择系统的基本架构和技术。3.1数据库概念设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及他们之间的关系,为逻辑结构设计打下基础。这个阶段用到的工具是E—R图(实体--联系图)。本系统中有四个实体集:·学生实体集·课程实体集·成绩信息实体集·班级实体集E-R图如下学生性别学号所在系姓名出生日期民族地址班号8图3.1学生实体E-R图图3.2课程实体E-R图图3.3成绩实体E-R图图3.4班级实体E-R图课程课程编号课程类型课程老师课程名称班级班号年级班主任成绩学号班号成绩姓名考试编号课程号9mmmnnnn1学生性别学号所在系姓名出生日期民族地址班号课程课程编号课程类型课程老师课程名称成绩学号班号成绩姓名考试编号课程号班级班号年级班主任选择拥有选择选择10图3.5系统总体E-R图3.2逻辑设计逻辑结构设计的主要目标是将概念结构转换为一个特定的DBMS可处理的数据模型和数据库模式。该模型必须满足数据库的存取、一致性及运行等各方面的用户需求。该设计以概念结构设计中的E-R图为主要依据,设计出相关的整体逻辑结构。根据总E-R图有五个实体但仓库实体在本系统中作用不大而且仅涉及到一个仓库,所以仓库不再单独设计一张表。再加上一个多对多关系(本系统不考虑供应关系)总共五个关系模式:学生信息(学号,性别,姓名,班号,入校日期,出生日期,联系电话,家庭住址,备注)班级信息(班号,年级,班主任,教室)课程信息(课程编号,课程名称,课程类型,课程描述)成绩信息(考试编号,姓名,课程,成绩)3.3物理设计从一个满足用户需求的已确定的逻辑模型出发,在限定的软、硬件环境下,利用DBMS提供的各种手段设计数据库的内模式,即设计数据的存储结构和存取方法。数据库物理结构设计是对于给定的逻辑数据模型,选择一个适合的物理结构,主要涉及存取方法与存储结构,它依赖于计算机系统。1.关系模式关系数据库系统采用关系模型作为数据的组织方式,现在流行的数据库系统大都是关系数据库系统。通过对关系模式的优化,得到六个基本表。表3.1学生信息表字段名字段类型长度主键或外键字段值约束对应中文属性名student_snoChar10PrimaryKeyNotNull学号student_snameChar10姓名student_ssexChar2性别borndateChar12出生日期ClassnoChar10班号NationChar10民族SdeptChar10所在系addressChar6地址表3.2课程信息表字段名字段类型长度主键或外键字段值约束对应中文属性名course_cnoChar10PrimaryKeyNotNull课程编号11course_cnameChar20课程名称course_ctypeChar4课程类型course_teacherChar10课程老师表3.3班级信息字段名字段类型长度主键或外键字段值约束对应中文属性名classnoChar10NotNull班号gradechar4NotNull年级directorChar20NotNull班主任表3.4成绩信息表表3.5用户登录表字段名字段类型长度主键或外键字段值约束对应中文属性名user_unoChar10PrimaryKeyNotNull用户名称user_PWDChar10NotNull用户密码2.简单物理设计在SQLServer2000中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。当在企业管理器中选择服务器和数据库文件夹,并打开已定义好的student数据库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。要建立各个表,选择student数据库中的表,单击鼠标右键,在弹出的菜单中选择“新建表”。下面的表均使用上述方法制作。具体在Sqlserver2000环境下,用查询分析器设计用户表,程序代码如下所示:1,建立学生信息表:createtablestudent/*学生表*/(snochar(10)primarykey,snamechar(10),sdeptchar(10),ssexchar(2)check(ssexin('男','女')),borndatechar(12),addresschar(6),classnochar(10),字段名字段类型长度主键或外键字段值约束对应中文属性名examnoChar10PrimaryKeyNotNull考试编码snochar10ForeignKeyNotNull学号snameChar10学生姓名classnoChar10ForeignKeyNotNull班号course_cnoChar10ForeignKeyNotNull课程号resultchar10成绩12nationchar(10));在数据库中,右击stud
本文标题:数据库课程设计_学生学籍管理系统设计与实现
链接地址:https://www.777doc.com/doc-2428865 .html