学分制下的中学学生成绩管理系统毕业论文.doc_第1页
学分制下的中学学生成绩管理系统毕业论文.doc_第2页
学分制下的中学学生成绩管理系统毕业论文.doc_第3页
学分制下的中学学生成绩管理系统毕业论文.doc_第4页
学分制下的中学学生成绩管理系统毕业论文.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学分制下的中学学生成绩管理系统 设计与实现 学 生: 学 号: 专 业: 班 级: 指导教师:张弘 四川理工学院计算机学院 二 O 一一年六月 学分制下的中学学生成绩管理系统设计与实现 摘 要 在 21 世纪的科技时代,计算机技术突飞猛进,计算机已经不仅是在科技上 应用,而且在生活中也是同样得到了广泛的应用。对如今的学校来说,办公信息 化是必然趋势。学校的信息化管理一个非常重要的组成部分就是学生成绩的管理, 因此学生成绩管理系统是一个教育单位不可缺少的部分。 本设计采用 B/S 模式,利用 ASP.NETSQL Server 2000 开发平台,按照软 件工程的基本原理和方法,从系统分析、需求分析、系统设计、数据库设计与系 统实现等方面详细介绍了学分制下中学学生成绩管理系统的实现过程;本系统采 用动态网页编程技术,主要实现了用户登录、用户管理、科目管理、成绩管理、 学生选课、成绩查询、选课管理等基本功能。 本学生成绩管理系统实现了在学分制背景下的中学学生成绩的管理。系统具 有友好的操作界面,简便的操作,良好的实用性。 关键词: 学分制;成绩管理系统;ASP.NET;B/S Design and implement of Student-Score Management System in Secondary Schools Based on Credit System I ABSTRACT Era in the 21st century technology, computer technology advances. Computer not only in technology has been applied, but also in life has been widely used. Of todays schools, office information is inevitable. A very important component of information management in schools is the management of student-score. Student-score management system is therefore an indispensable part of the education unit. This design uses B / S mode,and is based on ASP.NET + SQL Server 2000 as development platform. In accordance with the basic software engineering principles and methods, from system analysis, requirements analysis, system design, database design and system realization discussed in detail student-score management system in secondary schools based on credit system implementation process; The system uses dynamic web programming technology, the main achievement of the user login, user management, course management, performance management, student enrollment, performance information, enrollment management and other basic functions. Student-score management system achieves this student-score management in secondary schools based on credit system score management. System has a friendly interface, easy operation, good practicality. Keywords: Credit System; Student-Score Management System; ASP.NET; B / S 目 录 第 1 章 概 述 .1 II 第 2 章 系统分析 2 2.1 可性行分析 2 2.1.1 技术可行性分析2 2.1.2 经济可行性分析2 2.2 需求分析 3 2.2.1 功能需求3 2.2.2 性能需求3 2.3 系统功能分析 3 2.4 开发平台选择 6 2.4.1 Visual Studio 2005 简介 .6 2.4.2 C#语言简介6 2.4.3 SQL 简介 7 2.4.4 ASP.NET 的技术简介 8 第 3 章 系统设计 9 3.1 功能模块设计 9 3.1.1 用户登录模块设计 9 3.1.2 用户管理模块设计 .10 3.1.3 成绩查询模块设计 .11 3.1.4 成绩管理模块设计 .11 3.1.5 科目管理模块设计 .12 3.1.6 选课管理模块设计 .13 3.1.7 学生选课模块设计.14 3.2 数据库设计 .14 3.2.1 数据库逻辑设计.14 3.2.2 数据库物理设计.15 3.3 组织结构设计 .18 第 4 章 系统实现 .19 4.1 用户登陆模块实现.19 4.2 用户管理模块实现.21 4.3 成绩查询模块实现.22 4.4 成绩管理模块实现.23 III 4.5 科目管理模块实现.25 4.6 选课管理模块实现.26 4.7 学生选课模块实现.27 第 5 章 系统测试 .29 5.1 测试目标.29 5.2 测试项目说明.29 5.3 测试评价.31 结束语 32 致谢 33 参考文献 34 附录 35 附录 A:系统核心代码 35 附录 B:系统使用说明 44 四川理工学院毕业设计(论文) 0 第 1 章 概 述 在 21 世纪的科技时代,科学技术突飞猛进,计算机已经不仅是在科技上应 用,而且在生活中也同样得到了广泛的应用。一直以来使用传统人工的方式管理 文件档案、填写各种表格,这种管理方式存在着许多缺点,如:效率低、保密性 差,另外所用的时间长,产生大量的文件与数据,这对于查找、更新与维护都带 来了不少的困难,同时地点的限制也带来很大的麻烦。因此开发出一个学生成绩 管理系统是必要的。 当前各学校正在建立数字化校园,充分利用校园网的有利资源,已经实现了 办公无纸化的数字化建设。但是,目前很多学校的电子办公设施并不完善,然而 对于学校来说,成绩管理系统是一个学校不可缺少的部分,它的内容对于学校的 决策者与管理者来说都至关重要。所以,学生成绩管理系统应该能够为用户提供 充足的信息与快捷的查询手段。 在现阶段的学校管理工作中,学生成绩管理系统实现了由复杂、重复的人工 操作向人机简便操作的转化。它运用计算机完成数据收集、修改、查询、删除以 及统计等工作,提高了管理人员的工作效率,避免繁重的业务量造成的人为错误。 学校作为教育与科技的先行者,那些先进的、优秀的技术往往会为学校所率先采 用,网络技术也不外如此,优秀的学校管理决策者一定会选择或者自主开发一个 适合本校校情的学生成绩管理系统。 利用计算机对学生成绩信息进行管理,具有手工管理所无法比拟的优点。计 算机实现了对学生成绩信息的便捷化、无纸化管理,并且大大缩短了学校管理人 员的维护成本与维护周期,提高了学校的办公效率。同时,这也是学校管理的科 学化、正规化、与当代世界接轨的重要条件。因此,开发这样一个系统是很必要 的事情。 而且从 2010 年秋季高一新生开始,新课程实行学分管理,以学分描述学生 的课程修习状况。学生 3 年中必须获得 116 个必修学分(包括必须获得研究性学 习活动 15 学分、社区服务 2 学分、社会实践 6 学分),在选修 I 至少获得 22 学分, 在选修 II 中至少获得 6 学分,总学分达到 144 学分方可毕业。本系统就是针对学 分制下的中学成绩管理而开发的,它更适应于现在教育的发展趋势,更有实用价 值。 四川理工学院毕业设计(论文) 1 第 2 章 系统分析 2.1 可性行分析 可行性分析的基础是对系统的初步调查,系统的初步调查正确与否关系到可 行性的成败。可行性分析实质上是要进行一次大大压缩简化了的系统分析和设计 的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。 .1 技术可行性分析技术可行性分析 技术可行性主要是分析使用现有的技术能不能实现这个系统。 本毕业设计所描述的中学学生成绩管理系统是采用 ASP.NET 作为网络编程 框架,SQL Server 2000 作为数据库编写的一个 B/S 模式的系统。因为 ASP.NET 是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行 在 Web 应用软件开发者的几乎全部的平台上 。通用语言的基本库,消息机制, 数据接口的处理都能无缝的整合到 ASP.NET 的 Web 应用中。作者可以选择 一种最适合作者的语言来编写程序,或者把 作者的程序用很多种语言来写, 现在已经支持的有 C#(C+和 Java 的结合体) ,VB,Jscript,C+,F+。本 论文描述的系统就是使用的 C#语言来制作的。因为 C#相对比较常用, 也比 较简单,作者对 C#也更加熟悉些,而且 C#是.NET 独有的语言 。SQL 被作为 关系型数据库管理系统的标准语言。SQL 语句可以用来执行各种各样的操作,例 如更新数据库中的数据,从数据库中提取数据等。绝大多数流行的关系型数据库 管理系统都采用了 SQL 语言标准。SQL Server 是一个关系数据库管理系统 。 .2 经济可行性分析经济可行性分析 经济可行性主要分析这个系统的经济效益能否超过它的开发成本。 本系统就是针对现如今的中学新课改而应运而生的。现如今,高中也采用高 校的学分制了,新课改改变了过去课程结构单一、缺乏可选择性的弊端。高中新 课程由学习领域、科目、模块三个层次和必修、选修两个部分构成。设置了语言 与文学、数学、人文与社会、科学、艺术、技术、体育与健康、综合实践活动 8 个学习领域。各学习领域由课程价值相近的若干科目组成,共包括语文、数学、 外语、思想政治、历史、地理、物理、化学、生物、艺术(或音乐、美术)、体育 与健康、信息技术、通用技术等 14 个科目。当前各学校正在建立数字化校园, 充分利用校园网的有利资源,已经实现了办公无纸化的数字化建设。本系统符合 现在的需求,有继续开发的必要性。 吴清松:学分制下的中学学生成绩管理系统设计与实现 2 2.2 需求分析 .1 功能需求功能需求 本系统通过三种用户类型使用学生成绩管理系统,不同类型用户所使用功能 不同,这三种用户类型是学生、教师和管理员。管理员能够使用功能的权限最多, 教师在成绩管理中能够使用功能最多。特别是教师登录后,不同的科目的教师的 登录身份是与自己所教授的科目相对应的,具体的说就是教师进入系统后只能录 入自己所教授科目下学生的成绩。学生的功能最基本。系统功能主要包括以下几 个部分:用户登录、用户管理、成绩查询、成绩管理、科目管理、选课管理与学 生选课。按照以下不同的用户类型对具体功能进行描述: (1)学生 学生在系统的基本功能是对自己所有成绩的查询与个人信息的查看,选择与 查看自己想读的课程,以及修改自己的登录密码。 (2)教师 教师在用户管理中能看到自己信息,修改密码与查看个人信息;在成绩查询 中能够按学号或按姓名进行查询,可以查询某班学生的成绩并且成绩以排序成绩 显示出来,可以统计某班学生某科成绩的平均分;在成绩管理中能够录入自己教 授科目的成绩及修改已录入成绩,但修改成绩时有时间记录。 (3)管理员 管理员在学生成绩管理系统中在用户管理中能够添加学生与教师,并能为学 生、教师重设密码,能够编辑教师与学生信息;在成绩查询中,能够对学生成绩 按学号或按姓名进行查询;在成绩管理中能够按学号录入成绩、修改成绩;在科 目管理中能够添加科目的相关信息,删除科目。可以录入选课科目的相关信息; 可以添加、删除选课科目。 .2 性能需求性能需求 整个系统应当操作简便,界面友好,维护简便。数据库要求运行稳定,执行 速度快,数据安全性高。系统本身对计算机硬件平台与操作系统平台要求适中。 2.3 系统功能分析 该学生成绩管理系统实现了在学分制背景下的中学学生成绩的管理,在系统 中存在三种用户类型:学生、教师、管理员。管理员能够使用功能的权限最多, 教师在成绩管理中能够使用功能最多。特别是教师登录后,不同的科目的教师的 登录身份是与自己所教授的科目相对应的,具体的说就是教师进入系统后只能录 四川理工学院毕业设计(论文) 3 入自己所教授科目下学生的成绩。学生的功能最基本。主要有用户登录模块、用 户管理模块、成绩查询模块、成绩管理模块、科目管理模块、选课管理模块与学 生选课模块构成。如图 2.1 所示。 学生成绩管理系统 用户管理 成绩查询 成绩管理 科目管理 选课管理 用户登录 学生选课 图 2.1 系统功能模块图 下面具体的描述每个子功能模块的功能: (1)用户登录 用户登录模块的功能是:管理员与教师通过工号与密码登录,学生通过学号 与密码登录。如果用户名和密码不正确,则提示“用户名或密码不正确” ;如果 角色不正确,则提示“登录权限不正确” 。如图 2.2 所示。 用户登录 管理员登录教师登录学生登录 图 2.2 用户登录功能模块 (2)用户管理 用户管理模块的功能是:管理员能够添加教师与学生用户类型,能够编辑修 改密码、个人信息,能够查看用户信息;当其他用户忘记密码时,也可以找管理 员查看一下用户表,找出该用户的密码。如图 2.3 所示。 用户管理 添加用户信息查看用户信息 图 2.3 用户管理功能模块 吴清松:学分制下的中学学生成绩管理系统设计与实现 4 (3)成绩查询 成绩查询模块的功能是:教师能够按学号、姓名查询某个学生成绩,教师能 够查询某班学生自己教授科目的所有成绩,能够统计某班某科学生的平均成绩。 学生界面也有这个模块,学生可以查询自己的所有科目的成绩,如图 2.4 所示。 成绩查询 按学号或姓名查询成绩查询某班所有学生成绩查询某班平均成绩 图 2.4 成绩查询功能模块 (4)成绩管理 成绩管理模块的功能是:教师能够录入自己所教授的科目的学生成绩,当输 入了所有的成绩后,点击提交就没法修改了,要修改只能请求管理员创建一个修 改成绩的表格,供教师修改学生成绩,还要记录修改的时间。如图 2.5 所示。 成绩管理 录入成绩修改成绩 图 2.5 成绩管理功能模块 (5)科目管理 科目管理模块的功能是:管理员能够添加科目的相关信息,如课程编号、课 程名称、学分。管理员也可以删除已添加的科目信息。如图 2.6 所示。 科目管理 添加科目删除科目 图 2.6 科目管理功能模块 (6)选课管理 选课管理模块的功能是:管理员能够添加,删除选课信息(选课编号、课程 名称、教师名称、课程性质、学年、学期等)以及查看选课信息,每学期选课的 四川理工学院毕业设计(论文) 5 时候都由管理员录入相关的选课信息,然后供同学们选课。如图 2.7 所示。 选课管理 添加选课信息删除选课信息 图 2.7 选课管理功能模块 (7)学生选课 学生选课模块的功能是:学生根据自己的具体情况,决定选修哪些课程,但 是选修的课程名称不能重复,学生选好课后,点击提交就可以看到自己选了哪些 课,如果选错了或不想选某门课了,可以退选。如图 2.8 所示。 学生选课 选课退选查看所选课程 图 2.8 学生选课功能模块 2.4 开发平台选择 .1 VisualVisual StudioStudio 20052005 简介简介 Visual Studio 是微软公司推出的开发环境,Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服 务、智能设备应用程序和 Office 插件。 Visual Studio 2005 是一套完整的开发工具集,用于生成 ASP.NET Web 应用 程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic、Visual C+、Visual C#和 Visual J#全都使用相同的集成开发环境(IDE) ,利用此 IDE 可 以共享工具且有助于创建混合语言解决方案。另外,这些语言利用了.NET Framework 的功能,通过此框架可使用简化 ASP Web 应用程序和 XML Web Services 开发的关键技术。 .2 C# #语言简介语言简介 C#是 Visual Studio.NET 中包含的一种全新的开发语言。它从 C/C+语言发 展而来,具有与 C/C+语言相似的语法,继承和发扬了 C/C+语言的优点。同时, 吴清松:学分制下的中学学生成绩管理系统设计与实现 6 由于是 Microsoft 公司的产品,它又同 Visual Basic 一样简单,在创建图形用户界 面和事件驱动的应用程序方面的容易程度可以媲美 Visual Basic。对于 Web 开发 而言,C#又像 Java/C+语言一样,具有强大的功能和灵活性,使用起来更加方便 和直观。 C#语言虽然从 C/C+语言发展而来,但是它摈弃了 C/C+语言中容易出错的 指针、多重继承等概念,是一种完全面向对象、类型安全的语言,与使用新的. NET 框架的其他许多语言兼容,允许与具有 C/C+语言风格的需要传递指针类型 参数的 API 进行交互操作,允许 C#语言组件与其他语言组件间的交互操作。C# 是一种完全建立在.NET 框架平台之上的高级语言,其所有类型都是从.NET Framework 提供的统一类库中派生的,并且所有的功能实现都依赖于这个类库。 C#中没有多重继承并且没有模块类。C#中的简单类型仅仅是底层数据类型的直接 映射。C#中的类型不是由语言本身确定的,而是由公共类型系统确定的。例如, 在 C#中,枚举、属性和事件都已内建到语言中,虽然所有面向.NET Framework 的语言都可以使用该框架,但 C#是完全针对这个框架的,它可以充分使用这个框 架所提供的类、接口和对象。 C#是一种最新的、面向对象的编程语言,使得程序员可以快速地编写各种基 于 Microsoft.NET 平台的应用程序,Microsoft.NET 提供了一系列的工具和服务, 来最大程度地开发利用计算机与通信领域。正是由于 C#面向对象的卓越设计,使 它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。 .3 SQLSQL 简介简介 结构化查询语言(Structured Query Language,简称 SQL)是一种介于关系代 数与关系演算之间的语言,其功能包括查询、操纵、定义和控制 4 个方面,是一 个通用的、功能极强的关系数据库语言。目前已成为关系数据库的标准语言。它 是一个综合的、通用的、功能极强、同时又简洁易学的语言。SQL 语言集数据查 询(Data Query) 、数据操纵(Data Manipulation) 、数据定义(Data Definition)和 数据控制(Data Control)功能于一体,充分体现了关系数据语言的特点和优点。 它的主要优点有综合统一,高度非过程化,面向集合的操作方式,以同一种语法 结构提供两种使用方式,语言简洁,易学易用。 常用的 SQL 语句的一般格式: 1.定义基本表 四川理工学院毕业设计(论文) 7 CREATE TABLE ( 列级完整性约束条件 , 列级完整性约束条件. ,) ; 2.修改基本表 ALTER TABLE ADD 完整性约束 DROP MODIFY ; 3.删除基本表 DROP TABLE ; 4.查询数据 SELECT ALL|DISTINCT ,. FROM ,. WHERE GROUP BY HAVING ORDER BY ASC|DESC; 5.更新数据 1)插入数据 INSERT INTO (,.) VALUES(,.); 2)修改数据 UPDATE SET =,=. WHERE ; 3)删除数据 DELETE FROM WHERE ; .4 ASP.NETASP.NET 的技术简介的技术简介 ASP.NET 是一种强大的 Web 服务器端技术,与 ASP 相比,ASP.NET 拥有 更高的编译特性与缓存机制。其特点包括:与框架.NET 紧密结合;将事件模型 引入到 Web 应用程序的开发领域;支持多种语言开发,包括 C、Visual Basic 吴清松:学分制下的中学学生成绩管理系统设计与实现 8 和 Jscript 等。 ASP.NET 不仅仅是 ASP 的新版本,也是统一的 Web 开发平台,用来提供开 发人员生成企业级 Web 应用程序所需的服务。ASP.NET 是一个已编译的、基于. NET 环境,可以用任何与.NET 兼容的语言(包括 C.NET、Visual Basic.NET 和 Jscript.NET)创作应用程序,而不仅仅是原来 ASP 采用的 Javascript 和 VBScript。ASP.NET 可以无缝的与 HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio.NET)一起工作。另外,任何 ASP.NET 应用程序都可以使 用整个.NET Framework。 ASP.NET 利用.NET Framework 和公共语言运行库(CLR)中的性能增强功 能。所有 ASP.NET 代码都是可编译的,而不是解释的,这就允许对本机代码采 用早期绑定强类型处理,以及实行编译。ASP.NET 可方便的分解,即开发人员可 以移除那些与自己开发的应用程序不相关的模块。ASP.NET 提供丰富的缓存服务 (包括内置服务和缓存 API 两种) 。ASP.NET 还提供性能计时器和默认授权和验 证方案。ASP.NET 配置设置存储在基于 XML 的文件中,这些文件都是可读和可 写的。每个应用程序都可以有不同的配置文件,可以扩展配置方案,以适应用户 的要求。当应用程序安装在同一台计算机上,但使用不同的.NET Framework 版本 时,应用是并行运行的。 四川理工学院毕业设计(论文) 9 第 3 章 系统设计 3.1 功能模块设计 .1 用户登录模块设计用户登录模块设计 登录界面的主要功能是对用户的安全性管理,只有通过登录界面才能进入管 理系统进行管理,用户信息保存在数据库中的用户表里。如可以用“111111”这 个用户名进行登录,密码为“123456” ,登录角色为“管理员” 。 本界面主要是在 Visual studio 2005 平台上进行设计的,后台编码采用 C#语言, 背景图片采用 Photoshop 进行了渐变处理。其中包含的控件主要有 TextBox(用于 输入用户名和密码)、RadioButton(用于单选)、Button(用于单击触发事件) 。 界面图如图 3.1 所示。 图 3.1 登录界面 .2 用户管理模块设计用户管理模块设计 本模块主要用于添加用户信息,主要用到的控件有 Label(为控件提供说明 性文字) 、TextBox(用于输入用户名和密码) 、DropDownList(显示一个下拉列 表) 、Button(用于单击触发事件) 、GridView(与数据库绑定后,用 SQL 语句来 控制显示的数据)。其界面如图 3.2 所示。 吴清松:学分制下的中学学生成绩管理系统设计与实现 10 图 3.2 用户管理界面 .3 成绩查询模块设计成绩查询模块设计 本模块主要用于教师查询成绩,教师可以通过学号和姓名查询某个学生的自 己所教授科目的成绩,也可以通过班级编号查询某班的全部成绩和平均成绩。点 击查询按钮后,查询的结果会显示在下面。 本模块主要用到的控件有 Label(为控件提供说明性文字) 、TextBox(用于 输入学号、姓名和班级编号) 、DropDownList(显示一个下拉列表,主要是选择 学年与学期) 、Button(用于单击触发事件) 、GridView(与数据库绑定后,用 SQL 语句来控制数据的显示、编辑和删除)。其界面如图 3.3 所示。 图 3.3 成绩查询界面 四川理工学院毕业设计(论文) 11 .4 成绩管理模块设计成绩管理模块设计 本模块主要用于教师管理成绩,包括录入成绩和更新成绩,教师要把所有的 成绩都录入完毕,确定无误后,再点击提交按钮,因为提交过后教师就不能修改 和删除学生成绩了。如果教师在提交后要修改成绩的话,要找管理员赋予教师修 改的权限,并会记录修改的时间。 本模块主要用到的控件有 Label(为控件提供说明性文字) 、TextBox(用于 输入学号和成绩) 、DropDownList(显示一个下拉列表,主要是选择学年与学期) 、 Button(用于单击触发事件) 、GridView(与数据库绑定后,用 SQL 语句来控制 数据的显示、编辑和删除)。其界面如图 3.4 所示。 图 3.4 成绩管理界面 .5 科目管理模块设计科目管理模块设计 本模块主要用于管理员管理课程信息,管理员输入课程名称、课程编号和学 分后点击提交,就可以添加课程信息了。如果输错了,可以点击重置按钮。而且 点击提交按钮后,可以在下面看到添加的课程信息,也可以修改和删除已添加的 课程信息。 本模块主要用到的控件有 Label(为控件提供说明性文字) 、TextBox(用于 输入课程信息) 、Button(用于单击触发事件) 、GridView(与数据库绑定后,用 SQL 语句来控制数据的显示、编辑和删除)。其界面如图 3.5 所示。 吴清松:学分制下的中学学生成绩管理系统设计与实现 12 图 3.5 科目管理界面 .6 选课管理模块设计选课管理模块设计 本模块主要用于管理员管理选课信息,管理员会在每学期选课的时候,录入 备选的课程供学生来选。管理员只需要输入课程名称、教师名称、容量、课程性 质、学年与学期点击提交即可。选课编号则由后台代码根据输入的信息自动生成。 其他的相关信息则通过连表查询并显示出来。 本模块主要用到的控件有 Label(为控件提供说明性文字) 、TextBox(用于 输入选课信息) 、DropDownList(显示一个下拉列表,主要是选择学年与学期) 、 Button(用于单击触发事件) 、GridView(与数据库绑定后,用 SQL 语句来控制 数据的显示、编辑和删除)。其界面如图 3.6 所示。 图 3.6 选课管理界面 四川理工学院毕业设计(论文) 13 .7 学生选课模块设计学生选课模块设计 本模块主要用于学生选课,学生选课时不能选修相同的课程,在选定课程后, 点击提交按钮,学生就可以看到自己已经选择的课程。如果学生不想选了,可以 点击退选。 本模块主要用到的控件有 Label(为控件提供说明性文字) 、 DropDownList(显示一个下拉列表,主要是选择学年与学期) 、Button(用于单击 触发事件) 、GridView(与数据库绑定后,用 SQL 语句来控制数据的显示、编辑 和删除)。其界面如图 3.7 所示。 图 3.7 学生选课界面 3.2 数据库设计 .1 数据库逻辑设计数据库逻辑设计 一名教师教一门课程,一门课程可以由多名老师来教,因此教师与课程两个 之间是一对多的关系,在数据库中为体现一对多的关系,可专门用一张表储存这 种一对多的关系。 一个学生的一门功课有一个成绩,在成绩表中,主键和外键来自于课程表和 学生表,这个间接体现了学生与课程的多对多关系,即一名学生可以学习多门课 程,一门功课也可以有多个学生学习。 一个学生只属于一个班级,故学生和班级是一对多的关系。图 3.8 即是本系 吴清松:学分制下的中学学生成绩管理系统设计与实现 14 统的 E-R 图,即实体-联系图。 班级 学生 选修 课程 教师 组成 选修 讲授 课程编号 学号 分数 学分 课程名课程编号 课程编号 班级编号 年龄 职工号 性别 姓名 班级编号编辑名称 班级编号 年龄 性别 姓名 学号 1 M 1 M M N 图 3.8 系统 E-R 图 .2 数据库物理设计数据库物理设计 一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据 库,数据表主要用来存放一定格式的记录,数据表的行被称为记录,列被称为字 段。创建数据表的过程其实就是定义字段的过程。下面就是各个表的具体结构。 (1)用户表(Sysuser) 用户表中存储了用户的相关信息,包括用户号,用户名,用户密码和用户角 色。表的主键是用户号。表的具体结构如表 3.1 所示。 表 3.1 用户表 字段名称含义数据类型是否主键是否外键是否为空 Sysuser_id用户号intYNN Sysuser_name用户名charNNN Sysuser_mima用户密码charNNY Sysuser_role用户角色charNNY 四川理工学院毕业设计(论文) 15 (2)学生表(Student) 学生表用来存储学生的相关信息,包括学生的学号,姓名,性别,年龄,民 族,政治面貌,班级编号。其中学号是表的主键,班级编号是表的外键。表的具 体结构如表 3.2 所示。 表 3.2 学生表 字段名称含义数据类型是否主键是否外键是否为空 Student_id学号charYNN Student_name姓名charNNY Student_sex性别charNNY Student_age年龄charNNY Minzu民族charNNY Zzmianmao政治面貌charNNY Class_id班级编号charNYN (3)教师表(Teacher) 教师表用来存储教师的信息,包括教师工号,教师姓名,性别,年龄和课程 编号。表中的教师工号为表的主键,课程编号为表的外键。表的具体结构如表 3.3 所示。 表 3.3 教师表 字段名称含义数据类型是否主键是否外键是否为空 Teacher_id教师工号charYNN Teacher_name教师姓名charNNY Teacher_sex性别charNNY Teacher_age年龄charNNY Lesion_id课程编号charNNN (4)课程表(Lession) 课程表用来存储课程的信息,包括课程编号,课程名称和学分。课程编号为 表的主键。表的具体结构如表 3.4 所示。 表 3.4 课程表 字段名称含义数据类型是否主键是否外键是否为空 Lession_id课程编号charYNN Lession_name课程名称charNNY Lession_credit学分charNNY 吴清松:学分制下的中学学生成绩管理系统设计与实现 16 (5)成绩表(Degree) 成绩表用来存储学生成绩的相关信息,包括学号,课程编号,成绩,教师工 号,学年和学期。其中增加了一个 id 字段,并将其设为表的主键。表的具体结 构如表 3.5 所示。 表 3.5 成绩表 字段名称含义数据类型是否主键是否外键是否为空 id自动编号intYNN Student_id学号charNYN Lession_id课程编号charNYN Ddegree成绩floatNNY Teacher_id教师工号charNYN Xuenian学年charNNY Xueqi学期charNNY (6)选课表(Selectlession) 选课表记录的是选课的课程相关信息,是由管理员录入的。表中包含了选课 编号,课程编号,课程名称,教师姓名,学分等字段。主键是选课编号。表的具 体结构如表 3.6 所示。 表 3.6 选课表 字段名称含义数据类型是否主键是否外键是否为空 Xuanke_id选课编号charYNN Lession_id课程编号charNYN Lession_name课程名称charNNY Teacher_name教师姓名charNNY Lession_credit学分charNNY Rongliang容量intNNY Yuliang余量intNNY Kechengxz课程性质charNNY Xuenian学年charNNY Xueqi学期charNNY (7)班级表(Class) 班级表中存储的是班级的相关信息,包括班级编号,班级名称和所属年级。 四川理工学院毕业设计(论文) 17 其中主键是班级编号。表的具体结构如表 3.7 所示。 表 3.7 班级表 字段名称含义数据类型是否主键是否外键是否为空 Class_id班级编号charYNN Class_name班级名称charNNY Nianji所属年级charNNY (8)学生课程表(Studentlession) 学生课程表是存储学生所选的课程的相关信息的,由学生选课后自动生成。 主键是编号。选课编号,学号是外键。表的具体结构如表 3.8 所示。 表 3.8 学生课程表 字段名称含义数据类型是否主键是否外键是否为空 SL_id编号intYNN Xuanke_id选课编号charNYN Student_id学号charNYN 3.3 组织结构设计 本系统通过三种用户类型使用学生成绩管理系统,不同类型用户所使用功能 不同,这三种用户类型是学生、教师和管理员。管理员能够使用功能的权限最多, 教师在成绩管理中能够使用功能最多。特别是教师登录后,不同的科目的教师的 登录身份是与自己所教授的科目相对应的,具体的说就是教师进入系统后只能录 入自己所教授科目下学生的成绩。学生的功能最基本。系统功能主要包括以下几 个部分:用户登录、用户管理、成绩查询、成绩管理、科目管理、选课管理与学 生选课。 作者根据本系统的功能需求将系统的结构设计如图 3.9 所示。登陆界面有三 个登录角色:管理员,教师,学生。当用户名,密码和登录权限都正确的时候, 用户就可登录系统,进入对应的首页。不同的用户类型,使用的功能也不相同, 例如管理员登录后可以添加用户信息,可以修改密码,可添加班级信息,学生信 息,教师信息,科目信息,选课信息等,可以看出,管理员能使用的功能最多; 而教师和学生使用的功能就相对于管理员要少一些。 可以将系统结构按用户类型分为三大块,管理员登录为一块,教师登录为一 块,学生登录为一块。作者在设计的时候,也是这样分解系统的,并且将各个部 分的文件放在各自的一个文件夹里,这样便于管理,也便于查看代码,使作者的 想法更加清晰。 吴清松:学分制下的中学学生成绩管理系统设计与实现 18 登陆界面 首 页 成 绩 查 询 密 码 修 改 学生 全 校 性 选 修 课 学生选课情况查询 个 人 信 息 教师管理员 用 户 管 理 学 生 情 况 查 询 成 绩 查 询 密 码 修 改 成 绩 管 理 密 码 修 改 首 页 首 页 选 课 管 理 学生个人信息管理 班 级 管 理 成 绩 管 理 课 程 管 理 教 师 信 息 管 理 个 人 信 息 图 3.9 组织结构图 四川理工学院毕业设计(论文) 19 第 4 章 系统实现 4.1 用户登陆模块实现 用户登录时,需要输入用户名和密码,管理员和教师的用户名就是其工号, 学生的用户名是学号。初始密码和用户名相同。登录成功后,用户可以修改个人 密码。当用户名和密码正确,而权限不正确时,不能成功登录,但会有提示。模 块流程如图 4.1 所示。 输入用户名和密码 是否正确 登录成功 Y N 开 始 结 束 图 4.1 用户登录模块流程图 下面是本模块的部分核心代码,代码中用到的类和方法见附录。 protected void dengluanniu_Click(object sender, EventArgs e) SQLRW myrw = new SQLRW(); string mima= myrw.ReaderMsg(TextBox1.Text).ToString().Trim(); string pw = TextBox2.Text; string role = myrw.ReaderMsg1(TextBox1.Text).ToString().Trim(); if (mima=pw) if (RadioButton3.Checked = true Response.Redirect(“student/xszhuye.aspx“); else if (RadioButton2.Checked = true Response.Redirect(“teacher/jszhuye.aspx“); else if (RadioButton1.Checked = true Response.Redirect(“Administrator/glyzhuye.aspx“); else Response.Write(“alert(你的登陆权限不正确!); window.location.href=window.location.href;“); else Response.Write(“alert(用户名或密码错误!); window.location.href=window.location.href;“); 4.2 用户管理模块实现 用户管理只有管理员有这个功能,管理员可以添加和删除用,也可以修改密 码。并为用户指定使用权限。当输入的用户名已经存在时则不能重复添加。添加 成功时会有提示。模块流程如图 4.2 所示。 输入用户名、密 码和使用权限 用户名是否已存在 添加成功 N Y 开 始 结 束 图 4.2 用户管理模块流程图 下面是本模块的部分核心代码,代码中用到的类和方法见附录。 protected void Page_Load(object sender, EventArgs e) xuehao.Text = Session“name“.ToString(); xingming.Text = Session“name“.ToString(); 四川理工学院毕业设计(论文) 21 protected void Button1_Click(object sender, EventArgs e) SQLRW myrw = new SQLRW(); if (myrw.ReaderMsg15(TextBox1.Text) = false) Response.Write(“alert(你所输入的用户已存在!); window.location.href=window.location.href;“); else myrw.AddMsg(TextBox1.Text, TextBox2.Text, DropDownList1.SelectedValue); Response.Redirect(“yonghuxinxi.aspx“); protected void Button2_Click(object sender, EventArgs e) TextBox1.Text = “; TextBox2.Text = “; 4.3 成绩查询模块实现 老师可以输入学号或姓名查询某学生的单科成绩,也可以输入班级编号查询 某班的平均成绩和某班的详细成绩表。学生可以查询自己所学的科目的所有成绩, 也可以查询总学分和总绩点以及平均绩点。管理员可以查看所有学生的所有成绩。 本模块流程如图 4.3 所示。 输入学号或姓 名或班级编号 是否正确 显示查询结果 Y N 开 始 结 束 图 4.3 成绩查询模块流程图 下面是本模块的部分核心代码,代码中用到的类和方法见附录。 protected void Page_Load(object sender, EventArgs e) 吴清松:学分制下的中学学生成绩管理系统设计与实现 22 xuehao.Text = Session“name“.ToString(); SQLRW myrw = new SQLRW(); string info = myrw.ReaderMsg11(Session“name“.ToString(); xingming.Text = info1; protected void Button3_Click(object sender, EventArgs e) SQLRW myrw = new SQLRW(); string info = myrw.ReaderMsg11(Session“name“.ToString(); Label1.Text = myrw.ReaderMsg12(info4.Trim() + info0.Trim(), TextBox1.Text , info4, info0).ToString (); protected void Button5_Click(object sender, EventArgs e) SQLRW myrw = new SQLRW(); Label5.Text=myrw.ReaderMsg13(TextBox2.Text, Session“name“.ToString().ToString(); protected void Button11_Click(object sender, EventArgs e) SQLRW myrw = new SQLRW(); Label6.Text = myrw.ReaderMsg14(TextBox3.Text, Session“name“.ToString().ToString(); 4.4 成绩管理模块实现 教师在输入学号,成绩,学期,学年后添加,即可添加学生的成绩。添加后, 教师可以在下面的表格中看到添加的成绩。还可以修改和删除,如果确定无误后 点提交,提交后的成绩,教师就不能修改和删除了,所以教师要确认无误后再提 交。本模块流程如图 4.4 所示。 四川理工学院毕业设计(论文) 23 是否正确 输入学号和成绩 显示输入的数据 Y N 开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论