贵州航天职业技术学院2010-2011第一学期数据库课程设计1摘要学生考勤管理系统作为一个高校的基本管理,是学校对学生工作管理的基本依据。开发考勤管理系统,正是完善高校信息化管理的重要环节。人工考勤已很难满足学校规范化管理的要求,面对庞大的信息量,该方式现存在很多弊端。因此,建立现代化的智能考勤管理系统势在必行。这样也大大减轻了考勤工作人员的工作量,提高了工作效率,使原本复杂和枯燥无味的工作变得简单而轻松。本文以“考勤信息管理系统”的设计和开发为例,系统地阐述了考勤系统的设计开发的全过程,包括系统整体设计,逻辑框架与数据流程,各个功能模块划分,系统功能模块的设计与具体实现等部分。该系统侧重于学生考勤信息查询和数据库的维护,通过已编制好的程序,完成对用户的登录、考勤信息的添加、查询、统计,学生请假和销假等,本系统使用的开发工具是.NET开发程序,采用Access数据库。实现学生考勤数据采集、数据统计和信息查询过程的自动化,完善学生管理现代化,方便管理人员统计、考核学生出勤情况,方便学生管理部门查询、考核学生的出勤率,准确地掌握学生出勤情况和相关资料,有效地管理、掌握学生各项情况。贵州航天职业技术学院2010-2011第一学期数据库课程设计2目录摘要…………………………………………………………1一、实训概况………………………………………………3二、需求分析……………………………………………….4三、系统功能设计与实现………………………………….6四、系统实现与测试………………………………………16五、主要程序代码…………….....………………...………19六、结束语及心得体会………………………………………27参考文献………………………………………………………28贵州航天职业技术学院2010-2011第一学期数据库课程设计3一、实训概况(一)主要任务针对系统来说主要任务是设计一个学生考勤管理系统,实现学生考勤的录入、按班级统计、浏览、查询某学生全部考勤、请假、销假等功能。整个考勤系统能够提供请假、休学和退学等情况的记录,并实现等处理功能。具体的设计任务如下:1、实现用户登录及修改密码及创建用户帐户;2、能查看、查询、输入、添加、修改、删除学生基本信息,包括姓名、性别、班级、出生日期等;3、能查看、查询、输入、添加、修改、删除课程信息,包括教师信息、课程编号等;4、能查看、查询、输入、添加、修改、删除班级信息,浏览班级基本信息;5、能查看、查询、输入、添加、修改、删除考勤信息,包括请假和销假信息;6、能按学号、姓名、班级、专业、查询学生考勤,请假信息;7、能按专业或班级统计学生考勤,请假信息,并可以在里面进行按学号或姓名的查询等。(二)分工同组成员任务分工分工成员具体任务如下表成员具体任务张涛程序编写创建应用程序王涛分析测试系统韦俊滔画E-R图孙小明排版、文档写作贵州航天职业技术学院2010-2011第一学期数据库课程设计4二、需求分解考勤管理系统是高校对考勤实行了信息化管理,考勤管理中主要涉及的管理任务有4个方面:学生基本信息管理、考勤信息管理、考勤查询浏览管理以及系统管理,实现学生考勤的录入、按班级统计、浏览、查询某学生全部考勤、请假、销假等功能。因此,该系统使用VisualC#.NET及Access数据库开发系统作了考勤管理系统。学生的基本信息、学生考勤、系统用户管理,适用于各高等学校单位。考勤系统的目的是为实现学生考勤数据采集、数据统计和信息查询过程的自动化,完善学生管理现代化,方便管理人员统计、考核学生出勤情况,方便学生管理部门查询、考核学生的出勤率;准确地掌握学生出勤情况,有效地管理、掌握学生流动情况。(一)功能需求1.基本功能需求本课题要实现的是学生考勤管理系统,在设计时应该有友好的用户界面,便于考勤管理员的操作,系统应有基本功能如下:(1)考勤管理员用户登录功能;(2)学生考勤管理相关信息的管理功能;(3)查询功能;2.用户界面需求对于一个好的软件有一个友好的用户界面是很重要的。用户界面应尽量做的简单、层次清晰明了,以最大限度为用户提供操作方便。如尽量减少用户输入次数,多使用快捷按扭等。.3.开发环境介绍本系统使用的开发语言是VisualC#.net,数据库采用的是Access,以WindowsXP系统为操作平台。(二)系统需求分析贵州航天职业技术学院2010-2011第一学期数据库课程设计5考勤管理系统能够提供学生考勤的情况记录,方便地对学生考勤进行评定。考勤情况主要由考勤班干部记录然后上交到考勤管理员,需要设置人工添加的功能,如出勤记录、考勤统计、学生信息等,已备特殊情况的处理;还能够提供请假、休学和退学等情况的记录,并实现查询、添加、修改、删除、浏览等处理功能;能具有一定的安全性、协调性和完整性。考勤管理者可直接操作各考勤情况,考勤管理人员功能的信息量大,数据安全性和保密性要求最高,本系统考勤管理人员全部开放,对非管理员不需密码,可直接进入进行查阅。管理员可以浏览、查询、添加、删除、修改、统计学生考勤的基本信息;浏览、查询、统计、添加、删除和修改学生的基本信息,这部分功能由学生处管理人员执行。考勤管理系统通过考勤信息判断并记录学生出勤信息,可以保证考勤数据的准确、公正、安全,减少考勤人员的工作负担,避免人为因素的干扰和弄虚作假现象;各管理用计算机及管理软件用Windows环境下的全中文界面平台,能灵活处理各种特殊情况,方便的修改各种基本信息,提供丰富的统计信息,查询方便,管理安全,操作简便易学。经过开发人员的讨论,对考勤管理系统应实现的功能描述如下:1、用户信息管理用户信息管理的基本功能是添加、修改、删除和浏览用户详细信息。管理考勤人员使用系统自己创建用户帐号,用户的具体属性包括用户帐号、用户密码。2、信息管理学生信息、班级简况信息、班级成员信息、课程信息、考勤信息、请销假信息,管理人员可以对其进行添加、修改、删除和浏览等。3、学生考勤的录入功能考勤人员能够把学生的考勤记录(请假、销假等)输入到相应的数据库,也可对其进行添加、修改、删除。4、、浏览功能考勤人员能够浏览学生考勤记录及历史考勤记录,能通过显示菜单浏览全部信息。5、查询功能贵州航天职业技术学院2010-2011第一学期数据库课程设计6考勤人员能够按学号、姓名查询某学生的考勤记录或按专业、班级查询某个班级的考勤记录。6、修改功能考勤人员具有修改学生的考勤记录,如请假、销假、旷课等记录。7、请销假功能考勤人员能够记录学生的请假、销假功能。三、系统功能设计与实现该考勤系统主要设计思想如下:数据库工具:为解决学生信息与班级信息、课程信息的复杂的对应关系,选用关系型数据库管理工具建立它们之间的关联关系;查询方式:为方便查询,不仅要考虑按学生学号、姓名的确定查询方式,还要考虑满足考勤管理人员的不确定查询方式等。为此,我们采取模块化设计思想,通过各模块的不同组合以实现不同的查询功能。最终,使系统能够具有内容规范、信息完整、查询便捷等特点。(一)系统分析与设计基于上面的分析,对学生考勤信息管理系统进行以下分析:1、实现系统登录2、信息管理3、考勤、请假信息的查询(二)数据库分析与设计1、实体及其属性整个系统各实体可用以下关系来表示(其中主键已出生日期用下划线标识):学生(学号,姓名,性别,出生日期,联系方式,班级编号)班级(班级编号,班级名称,专业,班主任,班长,人数)课程(课程编号,课程名称,任课老师)考勤(学号,课程编号,考勤日期,考勤记录)请销假(学号,请假记录,请假日期,销假记录,销假日期)帐户(帐户,密码)贵州航天职业技术学院2010-2011第一学期数据库课程设计72、E-R图分析E-R图分析的目的是确定系统中所有实体、实体的属性及实体之间的联系,为设计数据库表结构打下基础。画E-R图通常使用自底向上的设计方法,首先对局部视图进行分析设计,然后再将局部视图合并,消除冲突和冗余,得到系统的总体E-R图。这里不再对局部视图进行设计,直接给出总体E-R图如下图所示课程名称学号请假记录请假日期销假日期销假记录班主任课程考勤学生班级选课出勤考勤组成请销假课程编号任课教师考勤日期考勤记录课程编号学号学号姓名性别出生日期联系方式班级编号班级名称班长班级人数n1n11贵州航天职业技术学院2010-2011第一学期数据库课程设计83、数据库表设计基于以上的功能分析,可为考勤系统创建7个Access数据表。应用和维护都比较方便。将其中的数据表设计如下表:表3-1考勤表字段数据类型长度是否为主键学号文本12是课程编号文本6是考勤日期日期/时间短日期是考勤记录文本4否表3-2请销假表字段数据类型长度是否为主键学号文本12是请假记录文本3否请假日期日期/时间短日期否销假记录文本1否销假日期日期/时间短日期否表3-3班级简况表字段数据类型长度是否为主键班级编号文本6是班级名称文本6否班主任文本6否班长文本6否人数数字整型否表3-4课程表字段数据类型长度是否为主键课程编号文本6是课程名称文本10否任课老师文本6否表3-5学生简况表字段数据类型长度是否为主键学号文本12是姓名文本6否性别文本1否出生日期日期/时间短日期否联系方式文本12否表3-6帐户表字段数据类型长度是否为主键帐户文本16是贵州航天职业技术学院2010-2011第一学期数据库课程设计9密码文本16否4、表间关系本管理系统共用到六个表:考勤表、请销假表、班级0表、班级简况表、课程表、学生简况表、帐户表,各表之间均有一定的关系,可以进行关联。考勤表、班级成员表、学生简况表、请销假表,这四个表里面都有一个相同的字段:学号,通过学号这个字段就可以将系统的这四个表关联了起来,当某个表发生插入、修改、删除等方面的改动时,相联的表之间也要进行相应的改动。班级成员表、班级简况表也有一个相同的字段:班级编号,将两表相关联。考勤表、课程表通过相同字段:课程编号,将两表相关联。各表间的关系图考勤信息系统体系结构图学生考勤管理系统按班级统计按专业统计管理统计考勤数据维护课程信息学生信息请销假信息考勤信息按班级查询班级成员班级信息按学号查询按姓名查询按专业查询重新登录退出系统贵州航天职业技术学院2010-2011第一学期数据库课程设计10(三)系统功能模块设计此系统共有四个模块,分别为:管理,查询,数据维护、统计。1、功能模块考勤信息管理系统的主要体系如下图所示:2、系统模块设计学生考勤管理系统按班级统计按专业统计管理统计考勤数据维护课程信息学生信息请销假信息考勤信息按班级查询班级成员班级信息按学号查询按姓名查询按专业查询重新登录退出系统程序流程图贵州航天职业技术学院2010-2011第一学期数据库课程设计113、登录系统模块(1)用户登录学生考勤管理系统的登录界面如图下图所示输入:用户名和密码登录系统、如果密码错误、则直接退出程序根据用户名和密码从数据库中提取用户权限。(2)创建新帐户(3)修改密码(四)系统详细设计主界面的设计是数据库开发的关键步骤,因为它在某种程度上体现了程序开发的质量和水。考勤信息管理系统采用多页形式的对话框,每个选项卡实现一种功能,用户可通过切换选项卡来操作整个系统的不同功能。这种界面的优点是结构紧凑,逻辑性强,在后面的运行事例里将有具体演示。贵州航天职业技术学院2010-2011第一学期数据库课程设计121、主控制模块主控制界面如下图所示:主控制界面的主要功能:(1)管理:课程信息、学生信息、请销假信息考勤信息、班级信息、班级成员课程信息窗体贵州航天职业技术学院2010-2011第一学期数据库课程设计13学生信息窗体请销假信息考勤信息贵州航天职业技术学院2010-2011第一学期数据库课程设计14班级信息班级成员(2)考勤:按班级查询、按学号查询、按专业查询、按姓名查询按班级查询贵州航天职业技术学院2010-2011第一学期数据库课程设计15按学号查询按专业查询按姓名查询贵州航天职业技术学院2010-2011第一学期数据库课程设计16(3)数据维护:数据备份、退出系统(4)关于四、统实现与测试贵州