数据库课程设计-考勤管理信息系统_第1页
数据库课程设计-考勤管理信息系统_第2页
数据库课程设计-考勤管理信息系统_第3页
数据库课程设计-考勤管理信息系统_第4页
数据库课程设计-考勤管理信息系统_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

《数据库系统原理课程设计报告》考勤管理系统学生姓名:倪匡男20090401159系别:数学与物理科学学院班级:1班专业:信息与计算科学指导教师:刘风华2011年12月15日目录TOC\o"1-2"\h\z\u1引言 11.1可行性研究12需求分析 22.1功能需求 22.2数据流图 32.3功能模块图 42.4系统数据流程图 42.5数据词典 43概念结构设计73.1接口设计73.2局部E-R图73.3整体E-R图84逻辑结构设计 94.1关系模式 94.2模式优化 ..105数据实施与维护 105.1数据表的创立 105.2建立存储过程 135.3创立触发器 146测试 147.课程设计总计15参考文献 15引言1.1问题描述随着企业人事管理的日趋复杂和企业人员的增多,企业的考勤管理变得越来越复杂。标准的考勤管理是现代企业提高管理效益的重要保证,而传统的人工管理存在着效率低、不易统计、本钱高和易出错等弊端,已经无法适应现代企业的需求。随着计算机技术和通信技术的迅速开展,将传统的人工考勤管理计算机化,建立一个高效率的、无过失的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。企业考勤管理经过如下的业务流程:〔1〕员工根本信息管理,添加,删除,更改〔2〕员工考勤管理,员工根据自己的班次在上下班时分别进行出勤操作,采用手动方式或者使用划卡机。由人事部门专门的人员管理出勤和退勤信息。〔3〕一般在每个月月初进行考勤汇总,汇总信息包括工作日的出勤情况、请假天数、出差天数、休假天数和不同性质的加班记录等。1.2研究目的待开发的系统的名称为企业职工在线考勤系统。我们以中小型企业的考勤管理业务为依托,结合科学管理的理论,设计并开发一个企业考勤管理信息系统,提供一个科学合理的考勤管理解决方案,彻底实现无纸化作业。根据管理权限的不同,将界面分为一般职员、部门经理、系统管理员和最高管理者四个层次,系统目标如下:〔1〕提供简单、方便的操作。〔2〕根据企业原来的考勤管理制度,为企业不同管理层次提供相应的功能。〔3〕通过考勤管理无纸化的实现,使企业的考勤管理更加科学标准。〔4〕节省考勤管理的本钱。〔5〕提高企业考勤管理的透明度和效率,防止“虚假出勤“的现象。〔6〕对系统提供必要的权限管理。〔7〕为企业实现整体信息化的其他相关系统提供必要的数据支持。1.3开发环境和运行环境公司考勤管理系统这运用了当前最流行的SQLSERVER20005运行和开发的1.库、根本表的建立和修改:在SQL-SERVER环境下用CREATETABLE建立库以及库中根本表。2.数据加载:用手工录入或导入等方法实现根本表中的数据加载。3.单表查询以及多表查询:在建立的根本表中使用select根本格式和聚集函数;设计适宜的视图,实现多表间查询。4.触发器:设计触发器,可实现表间关联字段修改时的完整性等问题。5.存储器:设计存储过程,并用语句调用。6.用SQLSERVER2000/2005等开发环境设计、实现系统主要功能。1.4预期结果和意义考勤系统能实现职工日考勤记录,记录请假信息,记录出差信息等功能,并最终所有信息归入月统计中去。本考勤系统建立了一个高效率的、无过失的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。需求分析2.1功能需求(1)数据管理功能是设置和管理根底数据,包括加班、请假类别的定义和班次的定义,在全县范围内可以进行根底数据的添加、删除和修改。(2)考勤管理包括出勤动作、出勤信息的查询;上级对下级员工的出勤信息确实认;生成考勤统计信息并可以根据指定的条件进行查询。实现从每日出勤到统计全部考勤信息的无纸化操作。为方便数据传递和查阅,要根据需求提供不同时间短的考勤统计信息表。(3)加班管理对员工的加班时间进行统计,记录开始时间和结束时间,对加班信息实现添加,删除等操作。(4)请假管理可以提出请假申请,并完善请假信息,如请假开始时间,请假结束时间,请假的次数进行管理。(5)出差管理管理者安排员工出差,对出差时间,次数的管理。2.2数据流图数据流图如图2.1所示加班请假请假信息职工加班请假请假信息职工加班信息加班信息 N N M M出差记录出差统计 M出差记录出差统计 M N N M出勤月统计出勤月统计出勤记录 N出勤记录2.1数据流图2.3功能模块图如图2.2所示,图为功能模块图职工考勤管理信息系统职工考勤管理信息系统员工根本信息出差记员工根本信息出差记录出勤记录请假记录月统计月统计加班记录2.2功能模块图2.4系统数据流程图如图2.3所示,图为数据流程图各种统计信息管理人员考勤员员工经理审批月度员工考勤统计请假、值班、出差记录上下班时间安排员工出勤记录记录出勤时间各种统计信息管理人员考勤员员工经理审批月度员工考勤统计请假、值班、出差记录上下班时间安排员工出勤记录记录出勤时间2.3数据流程图2.5数据字典在物理结构中,数据的根本存取单位是存储记录。有了逻辑结构以后,就可以设计存储记录结构,一个存储记录可以与多个逻辑记录相对应。存储记录就包括记录的组成,数据项的类型和长度等。在本图中2.5.1表2.5.1列名说明字段类型约束控制w_id职工编号Char(4)主键w_name姓名Char(6)非空w_sex性别Char(2)‘男’或’女’w_age年龄Int非空w_degree职称char(4)非空在本表2.5表2.5.2列名说明字段类型约束控制w_id职工编号Char(4)主键w_num出勤编号Int主键work_tim上班时间Datetime允许空end_tim下班时间Datetime允许空Work_note缺勤记录Datetime允许空在本图2.5表2.5.3列名说明字段类型约束控制w_id职工编号Char(4)主键Out_num出差编号Int主键Out_tim开始时间Datetime允许空Back_tim结束时间Datetime允许空Out_days统计天数Int允许空在本表2.5.4中加班记录表主要包含职工编号,加班编号,开始时间、结束时间表2.5.4列名说明字段类型约束控制w_id职工编号Char(4)主键Over_num加班编号Int主键Over_tim开始时间Datetime允许空Overend_tim结束时间Datetime允许空Over_days时间统计Int允许空在本表2.5.5中,请假记录表主要包括职工编号,请假编号,请假开始时间和请假结束时间组成。表2.5.5列名说明字段类型约束控制w_id职工编号Char(4)主键Off_num请假编号Int主键Off_tim请假开始时间Datetime允许空Offend_tim请假结束时间Datetime允许空Off_days统计天数Int允许空在本图2.5.6表2.5.6列名说明字段类型约束控制w_id职工编号Char(4)主键Work_note出勤月统计Int非空Out_note出差月统计Int允许空Over_note加班月统计Int允许空Off_note请假月统计Int允许空概念结构设计3.1局部E-R图〔1〕员工E-R图,如下图年龄姓名编号性别职工年龄姓名编号性别职工〔2〕图为出勤E-R图年龄职工编号下班时间缺勤记录上班时间出勤记录年龄职工编号下班时间缺勤记录上班时间出勤记录〔3〕图3.3为出差E-R图出差编号职工编号结束时间缺勤记录开始时间出差记录出差编号职工编号结束时间缺勤记录开始时间出差记录〔4〕加班E-R图如图3.4所示加班编号职工编号加班统计开始时间出勤记录加班编号职工编号加班统计开始时间出勤记录结束时间结束时间〔5〕请假E-R图如图3.5所示请假编号编号结束时间请假统计开始时间请假记录请假编号编号结束时间请假统计开始时间请假记录〔6〕月统计E-R图职工编号下班时间缺勤记录上班时间出勤记录职工编号下班时间缺勤记录上班时间出勤记录3.2整体E-R图如图3.7所示,图为整体E-R图职工职工性别年龄编号姓名出勤出勤记录上班时间缺勤记录下班时间出差出差记录起始时间统计天数请假信息请假结束时间统计天数开始时间加班加班信息起始时间结束时间时间统计月统计统计出差统计加班统计出勤统计请假统计请假编号加班编号出差编号职称结束时间结束时间4逻辑结构设计4.1关系模式职工〔职工编号,姓名,性别,年龄〕出勤记录〔职工编号,出勤编号,上班时间,下班时间,缺勤记录〕出差记录〔职工编号,出差编号,开始时间,结束时间,统计天数〕加班信息〔职工编号,加班编号,加班开始时间,加班结束时间,加班时间统计〕请假信息〔职工编号,请假编号,请假开始时间,请假结束时间,请假时间统计〕月统计〔职工编号,出勤月统计,出差月统计,加班月统计,请假月统计〕4.2模式优化职工、出勤记录、出差记录、加班信息、请假信息、月统计不存在非主属性对主属性的局部函数依赖,也不存在传递函数依赖,已经到达了3NF。5数据实施和维护5.1数据表的创立〔1〕如下图员工信息表〔worker〕CREATETABLEworker(W_idCHAR(4)CONSTRAINTworker_PrimPRIMARYKEY,w_nameCHAR(6)notnull,SEXCHAR(2)CONSTRAINTSEX_ChkCHECK(SEX='男'ORSEX='女')notnull,AGEINTnotnull,w_drgeeVARCHAR(4)NOTNULL,)图员工信息表〔2〕如下图出勤记录表〔work_note〕CREATETABLEwork_note(W_idCHAR(4),w_numint,CONSTRAINTwork_note_PrimPRIMARYKEY(W_id,w_num),work_timdatetime,end_timdatetime,work_notedatetime,)图出勤记录〔3〕如下图出差记录表〔out_note〕CREATETABLEout_note(W_idCHAR(4),out_numint,CONSTRAINTout_note_PrimPRIMARYKEY(W_id,out_num),out_timdatetime,back_timdatetime,out_daysint,)图出差记录〔4〕如图所示加班记录表〔over_note〕CREATETABLEover_note(W_idCHAR(4),over_numint,CONSTRAINTover_note_PrimPRIMARYKEY(W_id,over_num),over_timdatetime,overend_timdatetime,over_daysint,)图加班记录〔5〕如下图请假记录表〔off_note〕CREATETABLEoff_note(W_idCHAR(4),off_numint,CONSTRAINToff_note_PrimPRIMARYKEY(W_id,off_num),off_timdatetime,offend_timdatetime,off_daysint,)图请假记录〔6〕如下图月纪录表〔mounth〕CREATETABLEmounth_note(w_idCHAR(6)CONSTRAINTmounth_PrimPRIMARYKEY,work_noteintnotnull,out_noteint,over_noteint,off_noteint,)图月统计记录表5.2建立存储过程建立一个向员工出勤表中插入数据的存储过程CREATEPROCEDUREinsert_in@W_idCHAR(10),@w_numint,@work_timCHAR(20),@end_timCHAR(20),@work_noteCHAR(20)ASinsertintowork_notevalues(@W_id,@w_num,@work_tim,@end_tim,@work_note)goexecinsert_in@W_id='009',@w_num=029,@work_tim='2010/11/18:00',@end_tim='2010/11/120:00',@work_note='全勤'goselect*fromwork_notego5.3创立触发器建立一个触发器,根据员工姓名对员工信息进行修改createtriggerupdate_W_idonworkerforupdateasdeclare@before_updatechar(10),@after_updatechar(10)select@before_update=W_idfromdeletedselect@after_update=W_idfrominsertedif(@after_update>100)beginprint'人数过多,超出公司承受能力,请核实'rollbacktransactionendupdateworkersetW_id='008'wherew_name='李勇'updateworkerse

温馨提示

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

评论

0/150

提交评论