- 255.50 KB
- 2022-05-17 13:06:58 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
数据库应用课程设计报告书三峡大学科技学院企业考勤管理子系统数据库设计成绩:学号:姓名:指导教师:2010年1月12日14
三峡大学课 程 设 计 任 务 书2009学年秋学期课题名称企业考勤管理子系统指导教师姓名学号专业信息管理课题概述: 数据库的开发与设计是管理信息系统的重要组成部分,数据库设计的好坏直接影响到系统的开发进度和功能的实现。本课程主要应用已经学到的数据库系统和应用的知识,通过调查分析设计一个小系统的数据库,来提高学生对所学的知识和数据库开发过程的理解和掌握,提高分析问题、解决问题的能力,并为接下来的管理信息系统的课程设计打下基础。在数据库物理实现阶段主要使用微软的SQLSERVER数据库管理系统。设计要求:1、进行认真、完整的系统调查分析,取得所开发系统的第一手资料。2、原则上要求一人一个课题。3、设计报告书要求详细具体,对设计的全部内容都要进行详细的说明,并按照要求的格式打印。主要参考资料:1、《数据库系统概论》,高等教育出版社,萨师煊、王珊编著,第四版2、《SQLSERVER2005中文版标准教程》,清华大学出版社,唐会光等编。设计成果要求:1、课程设计报告书2、设计的数据库文件及代码设计内容及进度计划安排起止日期要求完成的内容18周星期四上午收集资料,进行系统分析和调查18周星期四下午概念结构设计、逻辑结构设计18周星期四晚上数据库物理设计18周星期五上午数据库实现、约束的建立18周星期五下午完整性、用户权限设计及实现18周星期五晚上索引、视图的实现18周星期六上午存储过程和触发器设计及实现18周星期六下午及晚上编写设计报告书并上交。14
企业员工考勤管理子系统摘要:该企业考勤子系统的功能是首先对于普通员工用户,可以查询员工的考勤信息,并相应的查询到工资的变化。考勤情况由管理员将请假记录,加班记录,出勤记录,出差记录录入考勤管理系统统计出的,详细的结果统计在月度考勤表中。员工都可以很详细的查询自己的情况,经理也可以根据此情况来考核员工。一.需求分析1.系统背景分析现在不论哪个企业,都要进行考勤,一些企业在考勤管理方面用了大量的人力和财力,不说准确度和可信度如何,其效率很低,而且容易出错,不利于管理。所以人工考勤已经很难再满足企业规范化管理的要求,随着数据库技术的发展和企业信息化建设的进行,使用计算机管理考勤成为一种主流趋势,它不仅为企业减少了人力财力的付出,而且也大大减轻了考勤工作人员的工作量。本文系统的阐述了企业考勤管理设计开发的全过程。包括系统需求调查分析,概念结构设计,逻辑结构设计等部分。2.数据流程图:管理员帐号和密码录入出差情况出差记录统登录录入数据录入请假情况请假记录统计录入加班情况计出加班记录统请差核对密码准备数据录入出勤情况计假记考勤管理系统出勤记录加记录班录统计信息工资表统计出勤记录工资评估已统计信息职称表参照完整的考勤数据月度考勤统计登录普通员工帐号和核对密码查询考勤统计考勤管理系统月度考勤统计密码查询工资情况工资表3.数据字典:(1),数据项描述数据项别名类型长度取值范围取值含义含义说明14
员工编号ynobigint0000000至9999999前三位为部门编号,后四位为顺序编号唯一标识每个学生员工性别ysexchar2“男”或“女”规范化性别是区分员工的一个大致范围部门编号bnoint000为顺序编号唯一标识每个部门出勤编号worknobigint00000000000000000000至2***1231009999999前八位为当天日期,中间两位设为00,后七位为员工编号唯一标识每次出勤加班编号overtimenobigint00000000110000000000至2***1231119999999前八位为当天日期,中间两位设为11,后七位为员工编号唯一标识每次加班出差编号travelnobigint00000000220000000000至2***123122999999前八位为当天日期,中间两位设为22,后七位为员工编号唯一标识每次出差请假编号leavenobigint00000000220000000000至2***123133999999前八位为当天日期,中间两位设为33,后七位为员工编号唯一标识每次请假月度考勤编号mattendnobigint00000000220000000000至2***123144999999前八位为当天日期,中间两位设为44,后七位为员工编号唯一标识每个人的月度考勤信息工资编号worknobigint00000000000至99999999999前七位为员工编号,后四位为顺序编号唯一标识每个人的工资情况(2)数据结构描述数据结构说明组成员工信息是考勤管理子系统的主体数据结构,定义了一个员工的有关信息员工编号,员工姓名,员工性别,出生日期,职务,部门编号部门信息部门编号,部门名称,部门经理职工号14
是考勤管理子系统的主体数据结构,定义了一个部门的有关信息工资表是考勤管理子系统的主体数据结构,定义了工资的详细信息工资编号,基本工资,奖金,实际工资(3)数据流描述数据流说明数据流来源数据流去向组成平均流量高峰期流量核对密码根据不同人员相应的权限登录时的信息考勤管理系统管理员的帐号密码与普通员工的帐号密码每天传输1000次1500次完整的考勤数据员工的考勤数据月度考勤统计工资评估月度考勤编号、员工编号、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数每月传输1500次1500次工资数据员工相应的工资工资评估的情况工资表工资编号、基本工资、奖金、实际工资每月传输1500次1500次(4)数据存储数据存储说明流入数据流流出数据流组成数据量存取方式出差记录记录员工出差的基本情况录入出差情况,调出出差记录统计出差记录出差编号、出差起始时间、出差结束时间、出差描述、补助资金每月200次更新,顺序检索工资表记录员工工资的情况工资的评估工资编号、基本工资、奖金、实际工资每月1500次更新月度考勤统计记录员工每月的考勤情况一个月的信息统计统计好的考勤数据月度考勤编号、员工编号、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数每月1500次更新,顺序检索(5)处理过程处理过程说明输入数据流输出数据流处理14
登录用正确的账号登录账号和密码核对密码要求密码正确,并且根据账户名来区分管理员和普通员工录入数据将准备的数据依次录入准备的出差,请假,加班,出勤的数据录入出差,请假,加班,出勤的情况要求数据根据其内容分别编入不同的记录中工资评估根据相应的评估方法来算基本工资,奖金和实际工资完整的考勤数据工资表基本工资加上加班的奖金,补助金减去请假,旷工扣的钱二.概念结构设计经过调查、信息流程分析、数据收集,并在结合需求分析,明确了该子系统的功能:A.给员工编号,登记其基本信息。B.给各部门编号、命名,确定其职责范围,并任命部门经理。C.对员工的考勤数据进行登记,并进行月度考勤统计。D.对员工的月度考勤统计的结果来核算员工工资。实体和属性的联系员工编号员工姓名员工部门编号出生日期员工性别部门员工编号部门经理职工号部门名称部门编号14
员工编号出差编号出差记录出差描述出差结束时间出差起始时间请假记录请假编号请假起始时间员工编号请假结束时间请假原因员工编号日期加班记录加班编号加班时间长度员工编号出勤记录日期出勤编号下班时间上班时间员工编号月度考勤编号14
日期累计加班天数累计正常工作时间月度考勤统计累计请假天数累计出差天数旷工次数早退次数迟到次数实发工资工资编号工资扣除工资基本工资应发工资员工编号补助资金加班费职称职称名员工编号系统基本的E-R图请假记录组成n114
组成出差记录月度考勤统计n1加班记录组成n11参照组成出勤记录n11职称信息1参照员工对应工资11nn1领导属于11部门对E-R图调整的准则:现实世界中的事物能作为属性对待的尽量作为属性对待;属性和实体的划分:属性中不具有需要描述的信息,即属性是不可分的数据项,不再包含其他信息。实体属性定义:员工(员工编号、员工姓名、员工性别、出生日期、职务、部门编号);部门(部门编号、部门名称、部门经理职工号);出勤记录(出勤编号、日期、上班时间、下班时间);请假记录(请假编号、请假起始时间、请假结束时间、请假原因、扣除奖金);加班记录(加班编号、加班时间长度、日期、加班费);出差记录(出差编号、出差起始时间、出差结束时间、出差描述、补助资金);月度考勤统计(月度考勤编号、员工编号、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数);工资(工资编号、基本工资、奖金、实际工资);具体调整如下:1.出勤记录,请假记录,加班记录,出差记录本应作为员工的一个属性,但是其中还涉及到相关的奖金待遇及具体描述,则单独作为一个实体;2.工资单独作为一个实体,因为此处强调的是员工的出勤工资,则分开来写。三.逻辑结构设计14
1、实体所对应的关系表:员工表(employee)列名别名类型长度备注员工编号ynobigint设为主码员工姓名ynamechar20员工性别ysexchar2出生日期birthdatatime职务ydutychar20部门编号bnoint外码,参照部门表部门表:(branch)列名别名类型长度备注部门编号bnoint设为主码部门名称bnamechar20部门经理职工号bmanagernobigint外码,参照职工表出勤记录表(work_register):列名别名类型长度备注出勤编号worknobigint设为主码日期timechar15上班时间ondutytimedatatime下班时间offdutytimedatatime员工编号ynobigint外码,参照职工表请假记录表:(leave_register):列名别名类型长度备注请假编号leavenobigint设为主码请假起始时间lstarttimedatatime请假结束时间lendtimedatatime请假原因reasonchar25员工编号ynobigint外码,参照职工表加班记录表:(overtime_register):列名别名类型长度备注加班编号overtimenobigint设为主码加班时间长度overtimelengthint14
日期timedatatime员工编号ynobigint外码,参照职工表出差记录表:(travel_register):列名别名类型长度备注出差编号travelnobigint设为主码出差起始时间tstarttimedatatime出差结束时间tendtimedatatime出差描述processvarchar50员工编号ynobigint月度考勤统计表(month_attend):列名别名类型长度备注月度考勤编号mattendnobigint设为主码员工编号ynobigint日期timedatatime累计正常工作时间ljworktimechar10累计请假ljleavetimechar10累计出差ljtraveltimechar10累计加班ljovertimechar10迟到次数latetimesint早退次数leavetimesint旷工次数absenttimesint员工编号ynobigint外码,参照职工表工资表(wage)列名别名类型长度备注工资编号worknobigint设为主码基本工资basicwageint奖金bonusint实际工资realwageint职称表(duty)列名别名类型长度备注员工编号ynobigint设为主码14
职称名ydutychar20补助资金allowanceint扣除奖金reducemoneyint加班费overtimefeeint具体调整如下:1).出勤记录,请假记录,加班记录,出差记录本应作为员工的一个属性,但是其中还涉及到相关的奖金待遇及具体描述,则单独作为一个实体;2).工资单独作为一个实体,因为此处强调的是员工的出勤工资,则分开来写。2、用户子模式设计考勤(员工编号、员工姓名、部门名称、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数);工资(员工编号、员工姓名、部门名称、职务、基本工资、奖金、实际工资);因为员工对于其他情况不会经常关注,经常使用的以上各项,所以设立考勤和工资关系。四、物理结构设计1、关系模式存取方法分析:对于该系统的各个关系最经常使用的操作就是查找,则采用B+树作为索引:1)、对以下经常在查询中出现的关系的码建立索引:A对员工的员工编号建立索引,使其按照员工编号的升序存放。B对部门的部门编号建立索引,使其按照部门编号的升序存放。2)、由于下面几个关系模式的更新频率较高,系统为维护索引要付出较大的代价,因此没有定义索引:月度考勤统计(月度考勤编号、员工编号、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数);工资(工资编号、基本工资、奖金、实际工资);2、存储结构设计经过分析得出本考勤管理子系统信息处理的特点是员工考勤和工资的数据不仅经常需要查询,而且更新速度快,每月就要更新一次。针对以上特点,设计如下:(1)确定数据库的存放位置为了提高系统性能,现根据应用情况将数据按照易变部分和稳定部分、经常存取部分和存取频率低的部分分别在两个磁盘上存放。1)、经常存取部分:员工,出勤记录,请假记录,加班记录,出差记录,月度考勤统计,工资。2)、存取频率较低的部分:部门(2)确定系统配置此管理子系统需要的微机数量和规模都不必太大,但在系统设计时应考虑到今后的发展需求,选择硬件设备、服务器操作系统、数据库时都考虑到能够逐步的增加和扩展。14
1)、硬件配置要求:CPU:PII200以上。内存:32MB以上。硬盘:2.1GB以上(可用空间最好在160MB以上)。打印机:推荐EPSONLQ-1600KII2)、软件配置要求:WINDOWS95、98、2000中文版操作系统。五、数据库完整性设计1、主键及唯一性索引建立:A将员工employee表中的yno属性定义为码。参照员工表。B将部门branch表中bno属性定义为码。参照部门表。C将出差记录travel_register表中的travelno属性定义为码。参照出差记录表。D将请假记录leave_register表中的leaveno属性定义为码。参照请假记录表。E将加班记录overtime_register表中的overtimeno属性定义为码。参照加班记录表。F将出勤记录work_register表中的workno属性定义为码。参照出勤记录表。G将月度考勤统计month_attend表中的monthno属性定义为码。参照月度考勤表。H将工资wage表中的wageno属性定义为码。参照工资表。2.对以下经常在查询中出现的关系的码建立索引:1)、在employ表的yno(员工编号)列上建立一个聚簇索引,而且employ表中的记录将按照yno升序存放。Createclusterindexemploynoonemploy(yno);2)、在branch表的bno(部门编号)列上建立一个聚簇索引,而且branch表中的记录将按照bno升序存放。Createclusterindexbranchnoonbranch(bno);3、参照完整性设计关系模型的参照完整性在createtable中用foreignkey短语定义哪些列为外码,用references短语指明这些外码参照哪些表的主码。A定义出差Travel表中的参照完整性,将travelno,yno设为主码,travelno参照travel_register表的ravelno,yno参照employee表的yno。B定义请假Leave表中的参照完整性,将leaveno,yno设为主码,leaveno参照leave_register表的leaveno,yno参照employee表的yno。C定义加班Overtime表中的参照完整性,将overtimeno,yno设为主码,overtimeno参照overtime_register表的overtimeno,yno参照employee表的yno。D定义出勤Work表中的参照完整性,将workno,yno设为主码,workno参照work_register表的workno,yno参照employee表的yno。4、check约束的定义14
AEmployee表中的ysex只能取“男”或“女”。Bleave_register表的reducemoney值大于0;Ctravel_register表的allowance值大于0;Dovertime_register表的overtimefee值大于0;Ewage表的basicwage,bonus,realwage值大于05、触发器设计A在删除员工之后,显示员工的基本信息B不准删除部门的信息。C员工的信息更改之后,相应的月度考勤统计表员工编号也要跟着变化。六、数据库视图设计视图是从一个或几个基本表导出的表,一经定义,就可以和基本表一样被查询、被删除。1)、定义一个反映员工的年龄的视图。createviewy_age(yno,yname,age)asselectyno,yname,2010-birthfromemployee;2)、建立反映员工工资情况的视图。createviewy_wage(yno,yname,basicwage,bonus,realwage)asselectyno,yname,basicwage,bonus,realwagefromemployandwage;3)、建立员工考勤情况的视图。createviewy_attend(yno,yname,ljworktime,ljleavetime,ljtraveltime,ljovertime)asselectyno,yname,ljworktime,ljleavetime,ljtraveltime,ljovertimefromemployeeandmonthattend;七、数据库存储过程设计14
为方便查询,设计以下存储过程:查询员工信息:员工(员工编号、员工姓名、员工性别、出生日期、职务、部门编号);查询员工工资信息:工资(员工编号、员工姓名、部门名称、职务、基本工资、奖金、实际工资);查询员工考勤信息:考勤(员工编号、员工姓名、部门名称、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数);八、权限设计此考勤子系统用户分为管理员和普通员工,管理员可以修改、删除、查询信息,普通员工只能查询信息。九、总结通过以上数据库的设计,我深刻了解了每个阶段的设计内容:系统需求分析、概念结构设、逻辑结构设计、物理结构设计、数据库的实施和维护。分析该企业考勤子系统的功能是首先能提供查询员工的信息,其次让员工能清楚自己的考勤情况,并相应的查询到工资的变化。考勤情况由请假记录,加班记录,出勤记录,出差记录来统计出的,详细的结果统计在月度考勤表中。员工都可以很详细的查询自己的情况,经理也可以根据此情况来考核员工。由于工资是随着考勤数据来变化的,因此工资要单独作为一个实体,这样很容易就能查到相应的详细情况。在做此子系统时,刚开始还不知道大概的格式,只是在盲目的做,这样到最后自己都不知道下一步该做什么了,所以凡事都要严格按照规则做,然后再发挥下,这样子就不会半途而废了。之后我严格按照书上的过程做,发现其实做该子系统并没有我想象中难,柳暗花明又一村,攻克一个难题之后,心中大悦,只要细心,慢慢来,一步一步做,一样可以做的出色,不过前提是要对制作子系统的过程熟悉,并且灵活运用。所以做此子系统最大的收获就是制作过程我已经很熟悉了,然后再做其他系统应该就会得心应手了。参考资料:[1]《数据库系统概论》王珊萨师煊高等教育出版社(第四版)2006.514
您可能关注的文档
- 百利客农业考勤管理制度
- 基于bs架构的考勤管理系统设计与实现
- a2254_1.01_考勤管理办法13.06.24
- 实验室工作人员考勤管理系统的设计与实现
- 企业员工考勤管理制度(doc格式)
- 数据库原理及应用课程设计:工资管理系统-职工考勤管理系统
- 员工考勤管理制度-公务员考勤管理制度
- 、指纹仪介绍 - 余姚市工程建设项目指纹影像采集考勤管理系统
- 公司员工考勤管理制度
- 企业考勤管理系统需求分析
- 考勤制度管理-考勤管理制度模板
- 考勤管理(doc格式)
- 感应式考勤管理系统
- 员工考勤管理制度
- 人力资源制度之考勤管理办法(试行)(制度范本、doc格式)
- 公司考勤管理表格制度范本
- 绩效考核某塑胶公司考勤管理制度
- 考勤管理制度