数据库课程设计--职工考勤管理信息系统.pdf

上传人:小*** 文档编号:77340820 上传时间:2023-03-13 格式:PDF 页数:16 大小:570.22KB
返回 下载 相关 举报
数据库课程设计--职工考勤管理信息系统.pdf_第1页
第1页 / 共16页
数据库课程设计--职工考勤管理信息系统.pdf_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《数据库课程设计--职工考勤管理信息系统.pdf》由会员分享,可在线阅读,更多相关《数据库课程设计--职工考勤管理信息系统.pdf(16页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、目录1 概述 11。1 设计背景 11。2 研究目的 11.3 理论基础的分析 21.4 预期结果和意义 22 需求分析 22.1 功能需求 22。2 数据流图 32。3 功能模块图 42.4 系统数据流程图 43 概念结构设计 43.1 局部 E-R 图 43。2 整体 ER 图 54 逻辑结构设计 64.1 关系模式 64。2 数据关系图 65 物理结构设计 65.1 存储记录结构设计 65。2 创建索引 86 数据库实施 96。1 建立数据库 96。2 数据表的创建 96。3 建立存储过程 126。4 创建触发器 127 数据库运行和维护 148 结论 14滨海学院数据库课程设计1 1

2、概述概述1.11.1 设计背景设计背景随着企业人事管理的日趋复杂和企业人员的增多,企业的考勤管理变得越来越复杂。规范的考勤管理是现代企业提高管理效益的重要保证,而传统的人工管理存在着效率低、不易统计、成本高和易出错等弊端,已经无法适应现代企业的需求。随着计算机技术和通信技术的迅速发展,将传统的人工考勤管理计算机化,建立一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资,使企业的管理水平登上一个新的台阶。企业考勤管理经过如下的业务流程:(1)员工基本信息管理,添加,删除,更改(2)员工考勤管理,员工根据自己的班次在上下班时分别进行出勤操作,采用手动方式或者使用划卡机.

3、由人事部门专门的人员管理出勤和退勤信息。(3)一般在每个月月初进行考勤汇总,汇总信息包括工作日的出勤情况、请假天数、出差天数、休假天数和不同性质的加班记录等.1.21.2 研究目的研究目的待开发的系统的名称为企业职工在线考勤系统;我们以中小型企业的考勤管理业务为依托,结合科学管理的理论,设计并开发一个企业考勤管理信息系统,提供一个科学合理的考勤管理解决方案,彻底实现无纸化作业。根据管理权限的不同,将界面分为一般职员、部门经理、系统管理员和最高管理者四个层次,系统目标如下:(1)提供简单、方便的操作。(2)根据企业原来的考勤管理制度,为企业不同管理层次提供相应的功能.(3)通过考勤管理无纸化的实

4、现,使企业的考勤管理更加科学规范.1滨海学院数据库课程设计(4)节省考勤管理的成本。(5)提高企业考勤管理的透明度和效率,防止“虚假出勤“的现象。(6)对系统提供必要的权限管理。(7)为企业实现整体信息化的其他相关系统提供必要的数据支持。1 1。3 3 理论基础的分析理论基础的分析本设计利用 sql server 2005 建立数据库,表格化存储,利用表的查询,连接,修改,删除数据等管理员工信息,对数据库设定必要的权限,只有具有权限的人才能进行查看,修改数据。1 1。4 4 预期结果和意义预期结果和意义考勤系统能实现职工日考勤记录,记录请假信息,记录出差信息等功能,并最终所有信息归入月统计中去

5、。本考勤系统建立了一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。2 2 需求分析需求分析2 2。1 1 功能需求功能需求(1)数据管理功能是设置和管理基础数据,包括加班、请假类别的定义和班次的定义,在全县范围内可以进行基础数据的添加、删除和修改。(2)考勤管理包括出勤动作、出勤信息的查询;上级对下级员工的出勤信息的确认;生成考勤统计信息并可以根据指定的条件进行查询。实现从每日出勤到统计全部考勤信息的无纸化操2滨海学院数据库课程设计作.为方便数据传递和查阅,要根据需求提供不同时间短的考勤统计信息表。(3)加班管理对员工的加班时

6、间进行统计,记录开始时间和结束时间,对加班信息实现添加,删除等操作。(4)请假管理可以提出请假申请,并完善请假信息,如请假开始时间,请假结束时间,请假的次数进行管理。(5)出差管理管理者安排员工出差,对出差时间,次数的管理。2 2。2 2 数据流图数据流图数据流图 如图 2。1 所示N月统计统计请假信息加班信息N请假N加班MM职工M出差出差记录MM出勤NN出勤记录2。1 数据流图3滨海学院数据库课程设计2 2。3 3 功能模块图功能模块图如图 2。2 所示,图为功能模块图职工考勤管理信息系统2 2。4 4 系统数据流程图系统数据流程图录员工基本信息出勤记出请加月统计2。差2 功能模块图假班记录

7、记录记录如图 2.3 所示,图为数据流程图员工记 录 出 勤时间员 工 出 勤记录请 假、值2。3 数据流程图班、出差记月 度 员 工考勤统计各种统计信息管理人员经理审批考3 3勤员概念结构设计概念结构设计上下班时间安排3 3。1 1 局部局部 E-RE-R 图图职工(1)员工 E-R 图,如图 3.1.1 所示图 3。1 员工 ER 图编号(2)图 2。3。2 为出勤 ER 图年龄姓名出勤记录性别4年龄滨海学院数据库课程设计图 3.2 出勤 E-R 图(3)图 3.3 为出差 E-R 图出差记录图 3。3 出差 E-R 图(4)加班 E-R 图如图 3.4 所示职工编号职工编号结束时间3。4

8、 加班 ER 图开始时间结束时间开始时间(5)请假 ER 图如图 3。5 所示缺勤记录加班统计出勤记录出差编号加班编号请假记录3。5 请假 ER 图编号(6)月统计 ER 图请假编号开始时间出勤记录3.6 月统计 E-R 图结束时间请假统计3 3。2 2 整体整体 E ER R 图图上班时间缺勤记录如图 3.7 所示,图为整体 ER 图结束时间统计天数下班时间职工编号3。7 整体 ER 图起始时间开始时间请假信息请假编号加班信息职称请假性别结束时间结束时间时间统计加班编号年龄加班起始时间5姓名职工出差出差记录出差编号滨海学院数据库课程设计4 4 逻辑结构设计逻辑结构设计4 4。1 1 关系模式

9、关系模式职工(职工编号,姓名,性别,年龄)出勤记录(职工编号,出勤编号,上班时间,下班时间,缺勤记录)出差记录(职工编号,出差编号,开始时间,结束时间,统计天数)加班信息(职工编号,加班编号,加班开始时间,加班结束时间,加班时间统计)请假信息(职工编号,请假编号,请假开始时间,请假结束时间,请假时间统计)月统计(职工编号,出勤月统计,出差月统计,加班月统计,请假月统计)4 4。2 2 数据关系图数据关系图如图 4。2.1 所示,在数据库中生成的关系图中,员工编号是员工信息表的主键,是其他表的外键.图 4.1 数据关系图5 5 物理结构设计物理结构设计5.15.1 存储记录结构设计存储记录结构设

10、计在物理结构中,数据的基本存取单位是存储记录。有了逻辑结构以后,就可以设计存储记录结构,一个存储记录可以与多个逻辑记录相对应。存储记录就包括记录的组成,数据项的类型和长度等。在本图中5.1职工信息表主要包括职工编号,姓名,性别,年龄表 5.1 职工信息表列名说明字段类型约束控制6滨海学院数据库课程设计w_idw_namew_sexw_agew_degree职工编号姓名性别年龄职称Char(4)Char(6)Char(2)Intchar(4)主键非空男或女非空非空在本表5.2中出勤记录包含职工编号,出勤编号,上班时间,下班时间,缺勤记录表 5。2 出勤记录表列名w_idw_numwork_tim

11、end_timWork_note说明职工编号出勤编号上班时间下班时间缺勤记录字段类型Char(4)IntDatetimeDatetimeDatetime主键主键允许空允许空允许空约束控制在本图5.3中出差记录职工编号,出差编号,开始时间,结束时间,统计天数表 5.3 出差记录表列名w_idOut_numOut_timBack_timOut_days说明职工编号出差编号开始时间结束时间统计天数字段类型Char(4)IntDatetimeDatetimeInt主键主键允许空允许空允许空约束控制在本表5.4中加班记录表主要包含职工编号,加班编号,开始时间、结束时间。时间统计表 5。4 加班记录表列名

12、w_idOver_numOver_tim说明职工编号加班编号开始时间字段类型Char(4)IntDatetime主键主键允许空7约束控制滨海学院数据库课程设计Overend_timOver_days结束时间时间统计DatetimeInt允许空允许空在本表 5。5 中,请假记录表主要包括职工编号,请假编号,请假开始时间和请假结束时间组成。表 5.5 请假记录表列名w_idOff_numOff_timOffend_timOff_days说明职工编号请假编号请假开始时间请假结束时间统计天数字段类型Char(4)IntDatetimeDatetimeInt主键主键允许空允许空允许空约束控制在本图 5.

13、6 中月统计主要包括职工编号,出勤月统计,出差月统计,请假月统计,加班月统计表 5。6 月统计记录表列名w_idWork_noteOut_noteOver_noteOff_note说明职工编号出勤月统计出差月统计加班月统计请假月统计字段类型Char(4)IntIntIntInt主键非空允许空允许空允许空约束控制5 5。2 2 创建索引创建索引为 mounth_note 在 w_id 上创建唯一索引Create index M1 on mounth_note(w_id)GoExec sp_helpIndex mounth_note8滨海学院数据库课程设计6 6 数据库实施数据库实施6 6。1 1

14、 建立数据库建立数据库CREATE DATABASE workerON(NAME=worker_data,FILENAME=f:worker.mdf,SIZE=3,FILEGROWTH=1)LOG ON(NAME=worker_LOG,FILENAME=C:worker_log.ldf,SIZE=1,MAXSIZE=50,FILEGROWTH=10)6.26.2 数据表的创建数据表的创建(1)如图 6。1 所示 员工信息表(worker)CREATE TABLE worker(W_id CHAR(4)CONSTRAINT worker_Prim PRIMARY KEY,w_name CHAR(

15、6)not null,SEX CHAR(2)CONSTRAINT SEX_Chk CHECK(SEX=男OR SEX=女)notnull,9滨海学院数据库课程设计AGE INT not null,w_drgee VARCHAR(4)NOT NULL,)图 6.1 员工信息表(2)如图 6。2 所示 出勤记录表(work_note)CREATE TABLE work_note(W_id CHAR(4),w_num int,CONSTRAINT work_note_Prim PRIMARY KEY(W_id,w_num),work_tim datetime,end_tim datetime,wor

16、k_note datetime,)图 6.2 出勤记录(3)如图 6。3 所示 出差记录表(out_note)CREATE TABLE out_note(W_id CHAR(4),out_num int,CONSTRAINT out_note_Prim PRIMARY KEY(W_id,out_num),out_tim datetime,back_tim datetime,out_days int,)图 6。3 出差记录(4)如图 6.4 所示 加班记录表(over_note)CREATE TABLE over_note(W_id CHAR(4),over_num int,10滨海学院数据库课

17、程设计CONSTRAINT over_note_Prim PRIMARY KEY(W_id,over_num),over_tim datetime,overend_tim datetime,over_days int,)图 6.4 加班记录5)如图 6。2.5 所示 请假记录表(off_note)CREATE TABLE off_note(W_id CHAR(4),off_num int,CONSTRAINT off_note_Prim PRIMARY KEY(W_id,off_num),off_tim datetime,offend_tim datetime,off_days int,)图

18、6。5 请假记录6)如图 6.6 所示 月纪录表(mounth)CREATE TABLE mounth_note(w_id CHAR(6)CONSTRAINT mounth_Prim PRIMARY KEY,work_note int not null,out_note int,over_note int,off_note int,)图 6.6 月统计记录表(11滨海学院数据库课程设计6.36.3 建立存储过程建立存储过程如图 6。7 所示 建立一个向员工出勤表中插入数据的存储过程CREATE PROCEDURE insert_in(W_id CHAR(4),w_num int,work_ti

19、m datetime,end_tim datetime,work_note datetime)ASinsert into work_notevalues(W_id,w_num,work_tim,end_tim,work_note)goexecinsert_inW_id=0001,w_num=1,end_tim=2010/11/1,work_note=nullgoselect from work_note图 6.7 运行结果work_tim=2010/11/1,6 6。4 4 创建触发器创建触发器(1)建立一个触发器,当想考勤记录中添加一条新的考勤记录时,触发统计该员工一个月的考勤记录,并存入月

20、统计的月考勤记录表中。请假记录,出差记录,加班记录分别建立此类触发器.12滨海学院数据库课程设计CREATE TRIGGER mounth_insertON work_noteFOR insertASbeginif update(w_id)update mounth_noteset work_note=(select count(work_tim))where w_id=(SELECT W_id FROM inserted)endCREATE TRIGGER worker_insertON workerFOR insertASbegindeclare id char(20)select id=

21、W_idFROM insertedif update(W_id)insert into mounth_notevalues(id,0,0,0,0)endcreate view myworkasselectworker.W_id,w_name,SEX,AGE,w_drgee,work_note,over_note,13from work_notewhere w_id=(SELECT W_id FROM inserted)group by w_id滨海学院数据库课程设计out_note,off_notefrom worker,mounth_notewhere worker。W_id=mounth_

22、note。w_id(2)创建一个触发器,当删除员工基本信息时,同事也删除其他表中员工的信息.如当删除 worker 表中信息是,也删除员工考勤记录表中的内容,请假记录,出差记录,加班记录分别建立此类触发器.create trigger delete_dataon workerfor deleteasdeletefrom work_notewhere w_id=(select w_id from deleted)7 7 数据库运行和维护数据库运行和维护本系统经过实际的测试和运行,基本可以满足中小企业考勤业务的要求。该系统运行稳定,在使用和维护中应该注意以下几个问题:(1)定期备份数据库和日志,以

23、使数据库在发生故障后恢复到一致性状态,保障数据库的完整性。(2)定期清理数据库中的无效数据,以提高运行效率.(3)对软件及运行环境进行日常维护.8 8 结论结论本系统在信息表述上还不完备,一些模块的信息还不够详细,主要是提供的报表有限。系统虽然针对中小企业的考勤管理业务。对使用打卡机、指纹机进行出、退勤的企业,还需要添加一个采集打卡机和指纹机的数据模块.下一步可以再熟悉系统设计风格的基础上,在各个界面上进一步添加多需要的字段和报表,或者添加采集数据的模块,以14滨海学院数据库课程设计扩充系统的功能。本系统的创新点在于触发器的应用,每增加一条记录,都会重新统计一下记录次数,并存入月纪录中,使得信

24、息更加准确。在设计时由于对编程语言知识的匮乏,所以数据库的界面化没有做成,如若想更加完善数据库,应该结合一些编程语言,使得操作界面更加人性化,简单化。通过本次设计,我对数据库有了更深入的了解,见证了一个系统从无到有,从漏洞百出到逐渐完善的过称,是我所学的只是得以所用,加深了对数据库的理解,在设计过程中有很多不会的问题,通过自己查阅资料逐渐解决,这本身就是一个学习的过程,不仅学到了只是,还掌握了学习方法。同时让我认识到自己所学知识的匮乏,所以要全面发展自己的专业,一个人的能力总是有限的,所以团队合作很重要,在做设计的过程中要学习他人之长,听取他人的意见,虚心向别人请教。相互配合做好自己的工作,才能成为一名合格的网路工程师.虽然自己做的设计还不是很完善,但我觉得很有意义,对我以及我今后的人生都很有帮助.15

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 实施方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com