毕业设计(论文)-学生信息管理系统毕业论文.doc_第1页
毕业设计(论文)-学生信息管理系统毕业论文.doc_第2页
毕业设计(论文)-学生信息管理系统毕业论文.doc_第3页
毕业设计(论文)-学生信息管理系统毕业论文.doc_第4页
毕业设计(论文)-学生信息管理系统毕业论文.doc_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

I 学生信息管理系统学生信息管理系统 系别:系别:* 专业:专业:* 学号:学号:* 姓名:姓名:* 班级:班级:* II 摘摘 要要 学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者 和管理者来说都至关重要。 本文介绍了学生信息管理系统的开发过程,阐述了系统分析、系统设计、数据库 设计的过程。在开发方法上本系统利用了软件工程化的思想和方法,总体上采用结构 化生命周期开发方法,具体模块实施采用了原型法和面向对象系统开发方法。并采用 VisualStudio.Net2005 作为开发工具,SQL Server 2005 作为后台数据库。本系统具 有学生档案管理,班级管理,课程管理,成绩管理,专业管理等模块,可分别完成日常学 生档案,班级信息,课程信息,成绩信息的添加、修改、删除、查询、打印等功能。 主要对“学生课程管理” , “学生成绩管理” , “学生档案管理” , “补助管理”四 个模块进行了具体设计。 关键字:计算机网络、数据库、信息管理、学生信息管理系统 目 录 摘 要 .II 第一章 绪 论 .1 1.1课题来源及意义.1 1.2 研究内容.1 1.3 系统开发与运行环境.1 第二章 系统研究现状 .2 2.1 管理系统综述.2 2.1.1 管理系统的特点 .2 2.2 VISUAL STUDIO C# 2005 介绍 .2 2.3 SQL2005 数据库概论 .3 2.4 ADO 连接数据库介绍 .3 第 3 章 需求分析 .4 3.13.1 系统功能需求系统功能需求.4 3.23.2 系统的性能需求系统的性能需求.4 3.33.3 系统数据要求系统数据要求.4 第四章 系统总体设计 .7 4.1 系统功能设计.7 4.2 系统模块划分.8 II 4.3 系统数据库设计.9 4.3.1 数据库概念设计.9 4.3.2 数据库物理设计 .10 第五章 系统的详细设计 .15 5.1 系统登录的设计与实现 .15 5.2 主窗口的设计 .18 5.3 主要模块的设计 .19 5.3.1 系统管理.19 1 管理用户.19 2 权限设置.20 5.3.2 学生档案管理 .23 5.3.3 班级管理 .27 5.3.4 课程管理课程管理功能 .27 5.3.5 成绩管理 .27 5.4 本章小结 .28 结语 .29 参考文献 .30 致谢 .31 1 第第 一一 章章 绪绪 论论 1.1 课题来源及意义 目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件 来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的 学生信息管理软件也不少。 原本的旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的 手工操作。这大大地阻碍了人类经济的发展。为了适应现代社会人们高度强烈的 时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。 现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开 发为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面: 第一,本系统的运行可以代替人工进行许多繁杂的劳动; 第二,本系统的运行可以节省许多资源; 第三,本系统的运行可以大大的提高学校的工作效率; 第四,本系统可以使敏感文档更加安全,为此,用计算机来管理学校的信息, 是非常必要的。 1.2 研究内容 学校工作流程分析 学校工作总体规划由教务人员在学生信息管理系统中完成对运行教务处所需 的基本数据的维护,包括这些信息的增加、修改及对各项信息的变动都将在这进 行操作。 新的学年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行 基本的信息录入,新生入学后由教务人员在学籍系统中完成新学生信息的维护。 在每个学期开始,教务处根据班级的情况,以班为单位,为每个班级安排一 个班主任及对此年级安排一个年级组长。并对各科老师进行安排。 每举行一次考试后由任课老师对成绩进行录入。班主任对本班的成绩汇总。 并进行排名,然后年级组长再进行汇总,并对本年级各科成绩及总成绩进行排名。 教务处、年级组长、班主任及任课老师跟据实际情况对录入的成绩进行维护, 各位同学对以上录入的信息可以跟据自己的需要进行适当的查询。 1.3 系统开发与运行环境 该运行环境的规定是保证本需求说明的功能得到实际真正体现的基础。 (1)运行环境 WindowsXP 或更高版本的操作系统 数据库系统:Microsoft SQL Server 2005 (2)开发环境: 开发工具:VisualStudio.Net2005 数据库系统:Microsoft SQL Server 2005 2 第第 二二 章章 系系 统统 研研 究究 现现 状状 2.1 管理系统综述 2.1.1 管理系统的特点 1、管理信息系统的特点 (1) 管理信息系统的组成 管理信息系统在企业中的应用存在三个要素,这就 是人、计算机和数据。 人是指企业领导者、管理人员、技术人员,以及 MIS 建设的领导机构和实施 机构,他们在系统中起主导作用。MIS 是一项系统工程,不是只靠一些计算机开 发人员就可以完成的,必须有企业管理人员的积极参与。 (2) 管理信息系统的界面特点 在计算机软件技术中,人机界面已经发展成为一个重要的分支。MIS 人机界 面设计一般遵循以下一些基本原则: 以通信功能作为界面设计的核心 人机界面设计的关键是使人与计算机之间能够准确地交流信息。一方面,人 向计算机输入信息时应当尽量采取自然的方式:另一方面,计算机向人传递的信 息必须准确,不致引起误解或混乱。另外,不要把内部的处理、加工与人机界面 混在一起(人机界面程序只是通信),以免互相干扰,影响速度。 界面必须始终一致 统一的人机界面不至于会增加用户的负担,让用户始终用同一种方式思考与 操作。 界面必须使用户随时掌握任务的进展情况 人机界面应该能够告诉用户软件运行的进度。特别是在需要较长时间的等待 时,必须让用户了解工作进展情况。 界面友好。使用方便 多数 MIS 软件的数据输入量较大。对于一些相对固定的数据,不应让用户频 频输入(特别是汉字),而应让用户用鼠标轻松选择。 总之,所开发的 MIS 在使用过程中,应使用户的数据输入量降至最低限度减 少用户的干预量。实践证明,用户干预愈少,MIS 系统的满意程度愈高。 2.2 Visual Studio C# 2005 介绍 Visual Studio 是一套完整的工具,用于生成桌面和基于团队的企业级 Web 应用程序。除了生成高性能的桌面应用程序外,还可以使用 Visual Studio 基于 组件的强大开发工具和其他技术,简化基于团队的企业级解决方案的设计、开发 和部署。Visual Studio 包含基于组件的开发工具(如 Visual C#、Visual J#、Visual Basic 和 Visual C+),以及许多用于简化基于小组的解决方案的设 3 计、开发和部署的其他技术。MSDN Library 也包含在内,它包含这些开发工具 的所有文档。 2.3 SQL2005 数据库概论 数据库在一个 MIS 系统中占有很重要的地位,数据库结构设计的好坏将直接 对应用系统的效率以及实现的效果产生影响。一个合理的数据库结构设计可以提 高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利 于程序的实现。 SQL Server 2005 为快速开发新一代企业级商业应用程序、为企业赢得 核心竞争优势打开了胜利之门。作为重要的基准测试可伸缩性和速度奖的记录 保持者,SQL Server 2005 是一个具备完全 Web 支持的数据库产品,提 供了对可扩展标记语言 (XML) 的核心支持以及在 Internet 上和防火墙外进 行查询的能力。 2.4 ADO 连接数据库介绍 ADO 是为微软的强大的数据访问接口 OLE DB 设计的,上一个便于使用的应 用程序层。 OLE DB 为任何数据源都提供了高性能的访问,包括:关系型数据库、非关 系型数据库、电子邮件、文件系统、文本和图形以及自定义业务对象等。 ADO 2.0 实际上是基于 MSADO15.DLL 这个动态链接库的,这个库文件的名 字虽然和 ADO 1.5 的一样,但是它实现了更新的接口。 4 第3 章 需 求 分 析 3.13.1 系统功能需求系统功能需求 学生信息管理系统在管理学生中占有重要的地位,它关系着学生信息的基本 信息,其中包括学生信息,班级信息、课程信息等。对于学校来讲,学生信息管 理系统是不可缺少的组成部分,它有效地管理学生档案,对学校学生的变动和统 计起着重要的管理作用。 本系统根据学校管理的实际要求,结合学生信息管理的实际流程要,需实现 以下功能: 1.能够对学生的有关资料进行输入,查询,修改,删除。 2.能够为学校提供强大的查询功能,以便管理人员了解和掌握学生的具体情 况。 3.能够对数据库和登陆记录进行清理。 4.可以对用户进行修改密码,新增用户。 3.23.2 系统的性能需求系统的性能需求 为了保证系统能够长期、安全、稳定、可靠、高效的运行,学生信息管理系 统应该满足以下的性能需求: 1.系统处理的准确性和及时性 系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中, 要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能 够满足学校对信息处理的需求。 2.系统的开放性和系统的可扩充性 学生信息管理系统在开发过程中,应该充分考虑以后的可扩充性。而要实现 这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定 的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、 替换完成系统的升级和更新换代。 3.系统的易用性和易维护性 学生信息管理系统使用人员往往对计算机并不是非常熟悉。这就要求系统能 够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该 尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要 提供足够的帮助,缩短用户对系统熟悉的过程。 3.33.3 系统数据要求系统数据要求 学生信心管理系统的数据需求包括如下几点: 1.数据录入和处理的准确性 数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正 确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输 入要通过系统界面上的安排系统具有容错性,从而降低出错概率。 2.数据的一致性与完整性 学生信息管理系统对数据的处理有很高的要求,因为对学生信息的处理非常 频繁,所以要有一定的人员维护数据的一致性,在数据录入处控制数据的去向, 5 并且要求对数据库的数据完整性进行严格的约束。 对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统 应该拒绝该数据。 3.数据的独立性 学生信息管理的管理对学校来说是非常重要的一个部分,不可能让每一个人 都对其进行操作,应该有特定的人员对学生信息管理系统进行管理,对系统进行 独立操作。 3.4 业务流程分析业务流程分析 3.4.1 班级管理业务流程图: 图 3.1 班级管理业务流程图 3.4.2 学籍管理业务流程图: 图 3.2 学籍管理业务流程图 教务处输入计算机 班主任教务处 学 生 班 级 班 级 输 出 教务处输入计算机 班主任教务处 学 生 档 案 档案 输出 6 3.4.3 成绩管理业务流程图:成绩管理业务流程图: 图 3.3 成绩管理业务流程图 3.4.4 课程管理业务流程图: 图 3.4 课程管理业务流程图 3.4.5 缴费管理业务流程图: 图 3.5 缴费管理业务流程图 教务处输入计算机 教师教务处 学 生 成 绩 教师 输出 教务处输入计算机 教师教务处 学 生 课 程 教务处输入计算机 教师教务处 学 生 惩 奖 名 名 输出 7 3.53.5 数据流程分析数据流程分析 3.5.1 数据流程图 由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。 学 生 成 绩 管 理 学籍 管理 部门 教师 教务处 学生 教师 学生情况 学生成绩 查询 统计分析 图 3.6 学生成绩管理系统 0 层数据流程图 第第 四四 章章 系系 统统 总总 体体 设设 计计 4.1 系统功能设计 学生信息管理系统是一个完整的学校学生信息管理系统。在本系统中主要包 括用户登录和注册功能、用户和角色管理功能、教师信息管理功能、班级和年级 管理功能、课程信息管理功能、学生信息管理功能、学生成绩管理功能等。它们 的具体描述如下: 1 用户登录和退出功能 用户登录功能主要包括的功能如下: (1) 配置数据库:灵活的配置数据库以保证在不同的电脑主机上使用该系统。 (2) 用户登陆:验证用户的信息是否合法,以及验证用户是否为系统的合法 用户。 退出功能主要包括的功能如下: (1)退出系统。 (2)切换用户。 2 用户和角色管理功能 用户和角色管理功能主要包括用户管理、角色管理及其用户和角色之间的关 8 系管理。在系统中主要包括:用户管理、角色管理、添加角色和用户修改密码。 3 学生档案管理功能 学生档案管理功能主要对学生信息的管理,如学生信息的添加、修改和删除 等。在系统中主要包括:查询新的学生信息、添加新的学生信息、修改学生信息、 删除学生信息。 4 班级管理功能 班级管理功能主要实现班级的管理功能,如班级的添加、修改和删除等。在 系统中主要包括:添加新的班级和年级信息、修改班级和年级信息、删除班级和 年级信息。 5 课程管理功能 课程管理功能主要对课程信息的管理,如课程信息的添加、修改和删除等。 在系统中主要包括:添加新的课程信息、修改课程信息、删除课程信息。 6学生成绩管理功能 学生成绩管理功能主要对学学生成绩的管理,如学生成绩的添加、修改和删 除等。在系统中主要包括:添加新的学生成绩、修改学生成绩、删除学生成绩。 7 缴费管理功能 缴费管理功能主要对学生缴费的管理,如基本学费设置、学生缴费浏览、学 生缴费的添加、修改和删除等。在系统中主要包括:添加新的学生缴费信息、修 改学生缴费信息、删除学生缴费信息和基本学费的设置。 4.2 系统模块划分 按照 3.1 的系统功能设计,可以把学生信息管理系统划分为用户登录和注册 模块、用户和角色管理模块、教师信息管理模块、班级和年级管理模块、课程信 息管理模块、学生信息管理模块、学生成绩管理模块。它们之间的关系如同 4.1 所示。 9 图 4.1 学生信息管理系统模块划分图 4.3 系统数据库设计 .1 数据库概念设计数据库概念设计 概念设计是根据已得到的需求,绘制出数据库结构的初步蓝图。 用户的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据 库结构能充分满足各种信息的输入和输出。收集基本数据,数据结构以及数据处 理的流程,组成一份详细的数据字典,为后面的具体设计打下基础。 根据实际需要,本系统需要的数据包括用户数据、权限数据、班级数据、学 生档案数据、成绩数据、课程表数据、考试类型数据、学期数据、专业数据、年 制数据、班主任数据、学生缴费数据和学费设置数据。 系统初始化 附加数据库 系统登录 系统主界面 学生信息管理 理 学生课程信息管理学生成绩信息管 理 系统管理 学生成绩录入 用户管理 修改密码 课程查询 学生信息录入 学生信息修改 学生选课 学生成绩查询 10 成绩信息 成绩 ID 学号 班号 成绩 。 。 。 1 m 1 m 1 m n 1 n1 1 n 学生 专业班级课程 缴费信息 所属 所 属 所属 对 应 交纳 n 分 配 ID 学号 实际交费 专业代 码 专业名 称 班号 班级名 称 所属系 课程号 课程名 称 系代码 学号 姓名 班号 图 4.2实体和实体之间的关系 E-R 图 .2 数据库物理设计数据库物理设计 数据库逻辑设计的任务是根据数据库概念设计的结果,设计数据库的概念模 式和外模式,这是数据库结构设计的重要阶段。外模式和概念模式是用户所看到 的数据库,是应用程序访问数据库的接口。 设计逻辑结构分为以下步骤: (1) 将概念结构转化为一般的关系模型; (2) 将转换来的关系模型向特定 DBMS 支持下的数据模型转换; (3) 对数据模型进行优化; 据以上分析,学生学籍管理系统数据库中的表格的设计结果如下表所示 1. 用户表:T_user 别名:U (User) 用户表用来存储用户的数据,如用户的编号、用户密码、用户信息、用户性 别、用户年龄等数据。表的字段说明如表 3.3.1 所示。 11 表 4.3.1 用户表 数据项名数据类型长度字段约束备注说明主/外键 U_loginVarchar4 NTO NULL编号(登录名)主键 U_pwdvarchar50密码 U_namevarchar50用户信息(姓名) U_sexvarchar50用户信息(性别) U_agevarchar50用户信息(年龄) U_statevarchar50 NTO NULL用户信息(权限)外键 P 2. 班级表 T_class 别名:C(Class) 班级表用来存储班级的数据,如班级的 ID、班级名称、班级的所在年级、班 级的教室、班级的年制、班级的专业、班主任等数据。表的字段说明如表 3.3.2 所示。 表 4.3.2 班级表 数据项名数据类型长度字段约束备注说明主/外键 C_idVarchar50NTO NULL班级编号主键 C_classvarchar50班级名称 C_gradevarchar50班级所在年级外键 C C_classroomvarchar50班级的教室外键 Cr C_yearvarchar50班级的年制外键 Y C_ specialityvarchar50班级的专业外键 Sp C_banjovarchar50班主任外键 B C_remarkvarchar50班级备注 其中班级主键 C1001 开始。 3. 学生档案表 T_studentsFile 别名:S (Students File) 学生档案表用来存储学生的数据,如学生编号、学生姓名、学生性别、学生 年级、学生班级、学生专业、学生年制、学生出生年月和学生数据等地址。表的 字段说明如表 3.3.3 所示。 表 4.3.3 学生档案表 数据项名数据类型长度字段约束备注说明主/外键 S_idvarchar50 NTO NULL学生编号主键 S_namevarchar50学生姓名 S_sexvarchar50学生性别 S_gradevarchar50学生年级外键 G S_classvarchar50学生班级外键 C S_ specialityvarchar50学生专业外键 Sp S_yearvarchar50学生年制外键 Y S_ birthratevarchar50学生出生年月 S_addresVarchar50学生地址 其中学生主键从 S1001 开始。 12 4. 课程表(所拥有有的课程) Tb_ Course 别名:Co(Course) 课程表用来存储课程的数据,如课程编号、课程名称、课程年级、课程专业、 课程年制和课程学期等数据。表的字段说明如表 3.3.4 所示。 表 4.3.4 课程表 数据项名数据类型长度字段约束备注说明主/外键 Co_ idvarchar50NTO NULL课程编号主键 Co_ namevarchar50课程名称 Co_classvarchar50课程年级外键 G Co_ specialityvarchar50课程专业外键 Sp Co_ yearvarchar50课程年制外键 Y Co_ termvarchar50课程学期外键 T 其中课程表主键从 Co1001 开始。 5. 考试类型表 Tb_ examtype 别名:E (Exeamtype) 考试类型表用来存储考试类型的数据,如考试类型编号、考试类型名称等数 据。表的字段说明如表 3.3.5 所示。 表 4.3.5 考试类型表 数据项名数据类型长度字段约束备注说明主/外键 E_idvarchar50NTO NULL考试类型编号主键 E_namevarchar50考试类型名称 其中考试类型主键从 E1001 开始。 6. 成绩表 Tb_success 别名:Su(Success) 成绩表用来存储有关成绩的数据,如学生学号、成绩班级、成绩类型、成绩 专业、成绩学期等数据。表的字段说明如表 3.3.6 所示。 表 4.3.6 成绩表 数据项名数据类型长度字段约束备注说明主/外键 Su_idvarchar50NOT NULL学生学号外键 S Su_ classvarchar50成绩班级外键 C Su_ typevarchar50NOT NULL成绩类型外键 E Su_specialityvarchar50NOT NULL成绩专业外键 Sp Su_ termvarchar50NTO NULL成绩学期外键 T 其中成绩主键从 Su1001 开始。 7. 学期表 Tb_ term 别名:T(term) 学期表用来存储有关学期的数据,如学期编号、学期名称等数据。表的字段 说明如表 3.3.7 所示。 表 4.3.7 学期表 数据项名数据类型长度字段约束备注说明主/外键 13 T_idvarchar50NTO NULL学期编号(编号)主键 T_namevarchar50学期名称 其中学期 主键从 T1001 开始。 8. 专业表 Tb_ speciality 别名:Sp(speciality) 专业表用来存储有关专业的数据,如专业编号、专业名称等数据。表的字段 说明如表 3.3.8 所示。 表 4.3.8 专业表 数据项名数据类型长度字段约束备注说明主/外键 Sp_idvarchar50NTO NULL专业编号(编号)主键 Sp_namevarchar50专业名称 其中专业主键从 Sp1001 开始。 9. 年制表 Tb_ year 别名:Y (year) 年制表用来存储有关学校年制的数据,如年制编号、年制名称等数据。表的 字段说明如表 3.3.9 所示。 表 4.3.9 年制表 数据项名数据类型长度字段约束备注说明主/外键 Y_idvarchar50NTO NULL年制编号(编号)主键 Y _namevarchar50年制名称 其中年制表主键从 Y1001 开始。 10. 班主任表 Tb_ banjo 别名:B(banjo) 班主任表用来存储班主任的数据,如班主任编号、班主任姓名等数据。表的 字段说明如表 3.3.10 所示。 表 4.3.10 班主任表 数据项名数据类型长度字段约束备注说明主/外键 B_idvarchar50NTO NULL班主任编号(编号)主键 B _namevarchar50班主任姓名 其中班主任表的主键从 B1001 开始 11. 权限表 Tb_ popedom 别名:P(popedom) 权限表用来存储用户权限的数据,如权限编号,权限姓名等数据。表的字段 说明如表 3.3.11 所示。 表 4.3.11 权限表 数据项名数据类型长度字段约束备注说明主/外键 P_idvarchar50NTO NULL权限编号(编号)主键 P _namevarchar50权限姓名 14 其中权限表主键从 P1001 开始。 12. 教室表 Tb_ classroom 别名:Cr(classroom) 教室表用来存储教室的数据,如教室编号,教室名称等数据。表的字段说明 如表 3.3.12 所示。 表 4.3.12 教室表 数据项名数据类型长度字段约束备注说明主/外键 Cr_idvarchar50NTO NULL教室编号(编号)主键 Cr_namevarchar50教室名称 其中教室表主键从 Cr1001 开始。 13. 年级表 Tb_ grade 别名:G(grade) 年级表用来存储年级的数据,如年级编号、年级名称等数据。表的字段说明 如表 3.3.13 所示。 表 4.3.13 成绩表 数据项名数据类型长度字段约束备注说明主/外键 G_idvarchar50NTO NULL年级编号(编号)主键 G_namevarchar50年级名称 其中年级表主键从 G1001 开始。 14. 学生成绩表 Tb_stusuccess 别名:stuSu (stuSuccess) 学生成绩表用来存储学生成绩的数据。如学生成绩编号、学生编号、学生姓 名、成绩课程、成绩学期、成绩年级、成绩班级、考试类型、考试成绩等数据。 表的字段说明如表 3.3.14 所示。 表 4.3.14 学生成绩表 数据项名数据类型长度字段约束备注说明主/外键 Su_idintNOT NULL学生成绩编号外键 S S_idvarchar50NTO NULL学生编号外键 C S_namevarchar50NOT NULL学生姓名外键 E S_coursevarchar50NOT NULL成绩课程外键 Sp S_termvarchar50NTO NULL成绩学期外键 T S_gradevarchar(50NTO NULL成绩年级 S_classvarchar(50NTO NULL成绩班级 S_examtypevarchar50NTO NULL考试类型 S_scorsefloat考试成绩 15. 学费设置表 Tb_setrestred 别名:setres(setrestred) 学费设置表用来存储学费设置的数据。如缴费编号、学生编号、学期等数 15 据。表的字段说明如表 3.3.15 所示。 表 4.3.15 学费设置表 数据项名数据类型长度字段约束备注说明主/外键 Se_idInt1001 自增NTO NULL缴费编号(编号)主键- Se_gradevarchar50学生编号 Se_moneyvarchar50学期 第第 五五 章章 系系 统统 的的 详详 细细 设设 计计 5.1 系统登录的设计与实现 1 系统启动后,将首先出现用户登录窗体,当用户输入用户名或者密码错误 连续达到 3 次以上者,便不能继续登录。 如图 5.1 所示 图5.1 系统登录界面 代码如下: if (GetConn.conn.State = ConnectionState.Closed) GetConn.conn.Open(); string sql = string.Format(select * from Tb_user where U_login=0and U_pwd=1, login, pwd); SqlCommand command = new SqlCommand(sql, GetConn.conn); SqlDataReader r = command.ExecuteReader(); if (r.Read() 16 /*获取以后要用的数据*/ string state = rU_state.ToString();/获取登录用户权限编 号 ConnUser.User = rU_name.ToString();/获取登录用户姓 名 r.Close(); /根据编号查询登录用户权限名称 string sql2 = string.Format(select * from Tb_popedom where P_id=0, state); SqlCommand c = new SqlCommand(sql2, GetConn.conn); SqlDataReader reader = c.ExecuteReader(); if (reader.Read() ConnUser.Porden = readerP_name.ToString(); reader.Close(); /权限判断开始 sql = select * from Tb_popedom_function where P_id= + state + ;/根据权限编号,查询功能列表 command.CommandText = sql; reader = command.ExecuteReader(); while (reader.Read() ConnUser.list.Add(readerF_id.ToString(); /*权限判断结束*/ this.Visible = false; MainForm main = new MainForm(); main.Show(); ConnUser.Login = txt_login.Text; 2 系统配置数据库窗口 在第一次使用时根据不同的电脑主机,数据库配置的密码不同,对数据库进 行配置。如图 4.2 所示。 17 图 5.2 系统配置数据库窗口 配置好数据库后测试连接成功,此时可登陆超级管理员的帐号:admin,密码:admin。 作为初始密码进行登陆。 string Dbdata = txt_data.Text; string Dbuser = txt_user.Text; string Dbpwd = txt_pwd.Text; if (Dbdata != null SetGetConn.database = Dbdata; if (Dbuser != null /SetGetConn.User = Dbuser; if (Dbpwd != null /SetGetConn.Pwd = Dbpwd; if (Dbdata = null | Dbdata.Trim().Equals() ManageStudentsSystem.Properties.Settings.Default.db = .; ManageStudentsSystem.Properties.Settings.Default.uid = sa; ManageStudentsSystem.Properties.Settings.Default.pwd =; else 18 MessageBox.Show(配置完成!); this.Close(); GetConn.url = string.Format(server=0;database=ManageStudentsSystem;uid=1;pwd=2, SetGetConn.database, SetGetConn.user, SetGetConn.pwd); GetConn.conn = new SqlConnection(GetConn.url); /将信息保存在配置文件中 ManageStudentsSystem.Properties.Settings.Default.db = SetGetConn.database; ManageStudentsSystem.Properties.Settings.Default.uid = SetGetConn.user; ManageStudentsSystem.Properties.Settings.Default.pwd = SetGetConn.pwd 5.2 主窗口的设计 用户输入正确的用户名和密码以后程序即进入主窗口,根据用户的权限不同 其所进入的页面页也不同。如超级管理员具有任何权限,进入的主界面如图 5.3 所示。 图 5.3 超级管理员的主界面 如财务处用户没有对用户进行管理的权限,没有班级添加的权限,也没有 对课程管理和成绩管理操作的权限,这几项操作的图案显示为灰色。进入的主界 面如图 4.4 所示。 19 图 5.4 财务处用户的主界面 5.3 主要模块的设计 5.3.1 系统管理 1 管理用户 超级用户可以在用户浏览窗口浏览所有的用户,可以根据不同的登录名、用 户姓名和权限进行详细的查询。并且可以新增或者修改用户信息。其中用户浏览 窗口如下图 4.5 所示: 图 5.5 用户浏览窗口 本窗口的主要代码如下: string sql = select * from Tb_user; if (GetConn.conn.State = ConnectionState.Closed) GetConn.conn.Open(); sda = new SqlDataAdapter(sql, GetConn.conn); 20 sda.Fill(ds, user); sql = select * from Tb_popedom; SqlDataAdapter da = new SqlDataAdapter(sql, GetConn.conn); da.Fill(ds, popedom); /*禁止自动生成列*/ dgv_manageuser.AutoGenerateColumns = false; dgv_manageuser.DataSource = ds.Tablesuser; GetConn.conn.Close(); /*给数据窗体的下拉框添加数据*/ U_state.DataSource = ds.Tablespopedom; U_state.DisplayMember = P_name; U_state.ValueMember = P_id; /*让每条数据直接选中下拉框的值*/ U_state.DataPropertyName = U_state; GetConn.conn.Close(); 2 权限设置 (1)新增用户权限 可以随时增加一种用户权限, 图 5.6 新增用户权限 主要代码如下: string sql = string.Format(select P_id from Tb_popedom order by P_id desc); if (GetConn.conn.State = ConnectionState.Closed) GetConn.conn.Open(); 21 SqlCommand c = new SqlCommand(sql, GetConn.conn); SqlDataReader reader = c.ExecuteReader(); if (reader.Read() string id = readerP_id.ToString(); txt_id.Text = (int.Parse(id.Substring(1, (id.Length - 1) + 1) + ; reader.Close(); GetConn.conn.Close(); /加载一级菜单 sql = select * from Tb_function where F_level=1; if (GetConn.conn.State = ConnectionState.Closed) GetConn.conn.Open(); sda = new SqlDataAdapter(sql, GetConn.conn); sda.Fill(ds, fun); (2)管理权限 超级用户可以进入角色管理窗口,在系统管理中权限设置,可以对角色管理及 其用户和角色之间的关系进行维护管理。如图 4.7 所示。 图 5.7 系统角色管理 主要代码如下: private void ManagePopedomForm_Load(object sender, EventArgs e) /对多选框的清空 for (int i = 0; i checkedListBox1.Items.Count; i+) 22 checkedListBox1.SetItemChecked(i, false); MessageBox.Show(*); for (int i = 0; i checkedListBox2.Items.Count; i+) checkedListBox2.SetItemChecked(i, false); for (int i = 0; i checkedListBox3.Items.Count; i+) checked

温馨提示

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

评论

0/150

提交评论