《人事管理系统数据库设计.doc》由会员分享,可在线阅读,更多相关《人事管理系统数据库设计.doc(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、. .?数据库原理与应用?课程设计报告设计题目:人事管理系统小组成员:2021年 12 月. .word. .目录前言2第一局部:根本情况与小组介绍21根本情况22小组介绍2第二局部:课程设计内容2第一章绪论21课题简介22设计目的23设计内容2第二章需求分析21功能需求22数据流图23数据字典2第三章概念构造设计21局部E-R图22全局E-R图2第四章逻辑构造设计21.关系模式22数据库构造的详细设计2第五章物理构造设计21建立索引22存储构造23数据库的建立2第三局部:分析与总结21数据库分析22课题总结2参考文献2. .word. .前言数据库技术是计算机科学技术开展最快,应用最为广泛的
2、技术之一。其在计算机设计,人工智能,电子商务,企业管理,科学计算等诸多领域均得到了广泛的应用,已经成为计算机信息系统和应用的核心技术和重要根底。随着信息技术的飞速开展,信息化的大环境给各成人高校提出了实现校际互联,国际互联,实现静态资源共享,动态信息发布的要求;信息化对学生个人提出了驾驭和掌握最新信息技术的素质要求;信息技术提供了对教学进展重大革新的新手段;信息化也为提高教学质量,提高管理水平,工作效率创造了有效途径。利用计算机支持教学高效率,完成人事管理的日常事务,是适应现代教学制度要求、推动人事管理走向科学化、规X化的必要条件;而人事管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、
3、核算的工作量很大,不允许出错,如果实行手工操作,每月须手工填制大量的表格,这就会消耗工作人员大量的时间和精力,计算机进展人事管理工作,不仅能够保证各项准确无误、快速输出,而且还可以利用计算机对有关教学的各种信息进展统计,同时计算机具有手工管理所无法比较的优点。例如:检索迅速、查找方便、可靠性高、存储量大、XX性好、寿命长、本钱低等。这些优点能够极大地提高员工工资管理的效率,也是教学的科学化、正规化管理,与世界接轨的件。在软件开发的过程中,随着面向对象程序设计和数据库系统的成熟,数计成为软件开发的核心,程序的设计要服从数据,因此人事管理系统的数据库设计尤其重要。本文主要介绍人事管理系统的数据库方
4、面的设计,从需求分析到数据库的运行与维护都进展详细的表达。本文的分为5章:第1章主要是课题简介及设计的内容与目的等根本情况;第2章是需求分析,明确用户的各种需求,此阶段是数据库设计的起点;第3章是概念构造设计,它是将需求分析的用户需求抽象为信息构造;第4章是逻辑构造设计,它将概念模型转换为某个DBMS 所支持的数据模型;第5章是物理构造设计,它将数据模型转换为计算机系统所支持的数据库物理构造;关键词:SQL 语言、数据库设计、人事管理系统. .word. .第一局部:根本情况与小组介绍1根本情况为了顺利完成这次数据库的课程设计,我们组成了5人小组,我们首先共同讨论确定了一个课题,然后确定了每个
5、人在团队中的角色,根据每位成员所掌握的知识以及技能分配好每个人的的任务,最后每位成员共同协作设计数据库。2小组介绍题 目人 事 管 理 系 统角色学号XX课题负责局部. .word. .第二局部:课程设计内容第一章 绪论1课题简介随着现代科技的高速开展,设备和管理的现代化,在实际工作中如何提高工作效率成为一个很重要的问题。而建立管理信息系统是一个很好的解决方法。一直以来人们使用传统人工的方式管理员工档案,这种管理方式存在着许多缺点,譬如:效率低、XX性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为
6、人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。人事管理信息系统的出现轻而易举的解决了传统管理人员档案的方法的缺点。伴随着人事管理信息系统的广泛应用,它已经成为了任何一家企业公司都不可缺少的组成局部,它的存在使得管理者更容易了解自己公司的员工,便于分配人员,易于进展调整。所以人事管理信息系统能够为管理人员提供充足的信息和快捷的查询手段。本文按照数据库系统设计的根本步骤,采取了事先进展需求分析,然后进展数据库的概念设计和逻辑构造设计,最后进展数据库详细设计的方法,完成了一个人事管理系统数据库系统的设计,可以实现:对员工根本档案的管理、奖惩记录的管理、出勤记录的管理、职务调动记录
7、的管理、工资管理、请销假管理。2设计目的应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,稳固所学知识。数据库应用课程实践:实践和稳固在课堂教学中学习有关知识,熟练掌握对于给定构造的数据库的创立、根本操作、程序系统的建立和调试以及系统评价。数据库原理软件设计实践:实践和稳固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程。3设计内容运用基于E-R 模型的数据库设计方法和关系规X化理论做
8、指导完成从系统的分析到设计直至系统的最终实现,开发人事管理信息系统,完成人事管理信息系统的全部功能, 对员工根本档案的管理、奖惩记录的管理、出勤记录的管理、职务调动记录的管理、工资管理、请销假管理。首先做好需求分析,并完成数据流图和数据字典。其次做概念构造设计,利用实体联系的方法将用户需求抽象为信息构造,得到E-R 图。再次就是逻辑构造设计,将E-R 图转换为计算机系统所支持的逻辑模型。然后就是物理构造设计,将逻辑数据模型转换为计算机系统所支持的数据库物理构造。最后就是数据库的实施与运行,把数据载入及运行数据库。. .word. .第二章 需求分析1功能需求通过对现行人事管理系统的调查,明确了
9、人事管理系统由档案管理、职务调动管理、奖惩管理、考勤管理、工资管理、请销假管理组成。系统功能的主要描述如下:1员工档案管理对公司里所有员工进展统一编号;将每一位员工的信息保存在员工档案记录中。对新聘用的员工,将其信息参加到员工档案记录中;对于解聘的员工,将其信息从员工档案记录中删除。当员工的信息发生变动时,修改员工档案记录中相应的属性。2员工职务调动管理对公司里所有员工的职务记录进展统一编号;登记员工调动前后的具体职务,以及调动时间。3奖惩管理对公司里所有员工的奖惩记录进展统一编号;登记员工奖惩的原因,所受奖惩类型,奖惩时间。4考勤管理对员工上班刷卡的记录进展统一编号;登记员工上班时间、签到类
10、型准时、迟到。对员工下班刷卡的记录进展统一编号;登记员工上班时间、签到类型准时、早退。5请销假管理对员工请假的记录进展统一编号;登记员工请假时间、请假类型。对员工销假的记录进展统一编号;登记员工销假时间、请假类型,检查是否超期。6工资管理对公司里所有员工的工资记录进展统一编号,建立工资记录表。7部门管理对公司所有的部门进展编号,建立部门记录。2数据流图经过详细的调查,弄清了系统现行的业务流程。在此根底上,构造出系统的逻辑模型,并通过数据流图表示。人事管理系统的顶层数据流程图如图1所示。图1注:图中虚线表示的数据流是员工信息。在人事管理系统顶层流程图中,“请假管理和“出勤管理两个处理框所表示的功
11、能不是很具体,需对他们进一步细化。请假管理细化流程图如图2所示:图2出勤管理细化流程图如图3所示:图3最终,经过整理后得出细化后的系统数据流程图,如图4所示:图43数据字典人事管理系统数据流程图中,数据信息和处理过程还需要通过数据字典来描述。在本文的数据字典中,主要对数据流图中的数据流、数据存储和处理过程进展说明。1主要的数据流定义数据流名称:员工情况位置:员工P1定义:员工情况=+性别+出生日期+民族+学历+职称数据流量:根据公司的员工具体录用情况来确定说明:要对每一位被聘用的新员工进展唯一编号数据流名称:奖惩情况位置:P3员工定义:奖惩情况=员工流水号+奖惩类型+奖惩金额+奖惩年月日数据流
12、量:根据公司的具体情况来确定说明:要对每一次的奖惩记录进展唯一编号数据流名称:奖惩批复位置:上级P3定义:奖惩批复=奖惩类型+批复部门号+批复原因+批复日期数据流量:根据公司的具体情况来确定说明:具体应用中,批复原因可以省略数据流名称:调动情况位置:P5员工定义:调动情况=员工编号+调动前职务+调动后职务+调动日期数据流量:根据公司的具体情况来确定说明:员工编号和调动日期可以唯一确定一个调动情况数据流名称:调动批复位置:上级P5定义:调动批复=批复部门号+批复原因+批复日期数据流量:根据公司的具体情况来确定说明:批复原因可以省略数据流名称:上班刷卡位置:员工P7.1定义:上班刷卡=员工编号+上
13、班刷卡时间+刷卡机号数据流量:根据公司的具体规模情况来确定说明:上班刷卡时间会汇入到出勤记录中数据流名称:下班刷卡位置:员工P7.2定义:下班刷卡=员工编号+下班刷卡时间+刷卡机号数据流量:根据公司的具体情况来确定说明:下班刷卡时间会汇入到出勤记录中数据流名称:工资查询位置:P4员工定义:工资查询=员工编号+根本工资+奖金+罚款+超始时间+截止时间+发薪日期数据流量:根据公司的具体情况来确定说明:根据员工编号和发薪日期可以唯一确定一个工资记录数据流名称:请假申请位置:员工P2.2定义:请假申请=员工编号+请假时间+请假天数数据流量:根据公司的具体情况来确定说明:员工编号和请假时间可以唯一确定一
14、个请假记录数据流名称:请假批复位置:上级P2.2定义:请假批复=审批人+批复结果数据流量:根据公司的具体情况来确定说明:批复结果的类型只能是批准、拒绝数据流名称:销假申请位置:员工P2.1定义:销假申请=员工编号+销假时间数据流量:根据公司的具体情况来确定说明:针对销假申请没用单独建立销假记录表,在这里将销假记录和请假记录进展了合并,因为在一般情况下,请假是不能够进展嵌套的数据流名称:管理员情况位置:管理员P6定义:用户身份=员工编号数据流量:根据公司的具体情况来确定说明:要对每一位管理员建立唯一的账号数据流名称:用户身份位置:平安管理P1,P2.1,P2.2,P3,P4,P5,P7.1,P7
15、.2定义:用户身份= 非法用户 | 内部管理员 | 效劳管理员数据流量:根据公司的具体情况来确定说明:不同的用户身份对应不同的操作权限,对应着不同的平安级别数据流名称:部门情况位置:上级P8定义:部门情况=部门编号+部门名称+领导人号数据流量:根据公司的具体情况来确定说明:部门编号是主码2主要的数据存储定义数据存储编号:员工记录 D1输入:P1输出:P1,P7.1,P7.2,P2.1,P2.2数据构造:员工记录=+性别+出生日期+民族+学历+职称+员工编号数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以随机检索为主说明:员工编号具有唯一性和非空性;性别只能是男或
16、女;主码是员工编号数据存储编号:请假记录 D2输入:P2.1,P2.2输出:P2.1,P2.2数据构造:请假记录=员工编号+请假时间+请假天数+销假时间数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以更新操作为主说明:主码设为请假时间和员工编号;员工编号是外码,参照表是员工记录数据存储编号:奖惩记录 D3输入:P3输出:P3数据构造:奖惩记录=员工流水号+奖惩类型+奖惩金额+奖惩时间+批复部门号+批复原因+批复日期数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以更新操作为主说明:主码设为奖惩时间和员工编号;员工编号是外码,参照表是
17、员工记录数据存储编号:工资记录 D4输入:P4输出:P4数据构造:工资记录=员工编号+根本工资+奖金+罚款+超始时间+截止时间+发薪日期数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以更新操作为主说明:主码设为发薪日期和员工编号;员工编号是外码,参照表是员工记录数据存储编号:职务调动记录 D5输入:P5输出:P5数据构造:职务调动记录=员工编号+调动前职务+调动后职务+调动日期+批复部门号+批复原因+批复日期数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以更新操作为主说明:主码设为调动日期和员工编号;员工编号是外码,参照表是员工记
18、录数据存储编号:管理人员记录 D6输入:P6输出:P6数据构造:管理人员记录=用户密码+职工号+密码+管理员账号数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以更新操作为主说明:主码设为管理员账号数据存储编号:出勤记录 D7输入:P7.1,P7.2输出:P7.1,P7.2数据构造:出勤记录=员工编号+上班刷卡时间+下班刷卡时间+刷卡日期数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以更新操作为主说明:主码设为员工编号和刷卡日期;员工编号是外码,参照表是员工记录数据存储编号:部门记录 D8输入:P8输出:P8数据构造:部门记录=部门
19、编号+部门名称+领导人号数据量和存取频度:根据公司的具体规模情况来确定存取方式:联机处理;检索和更新;以检索操作为主说明:主码设为部门编号3主要的处理过程处理过程编号:P1处理过程名:档案管理输入:用户身份,员工记录,员工情况输出:员工记录处理说明:根据员工的聘用、解聘建立或删除员工记录,以及在后续的过程中,以管理员身份对员工的记录进展修改处理过程编号:P2.1处理过程名:销假管理输入:销假申请,请假批复,用户身份,员工记录,销假记录输出:请假记录处理说明:根据员工的销假申请,把销假时间录入到相应的请假记录中处理过程编号:P2.2处理过程名:请假管理输入:请假申请,请假批复,用户身份,员工记录
20、,请假记录输出:请假记录处理说明:根据员工的请假申请和批复情况,进展请假表的登记处理过程编号:P3处理过程名:奖惩管理输入:用户身份,奖惩批复,奖惩记录输出:奖惩记录,奖惩情况处理说明:根据奖惩批复的要求对员工进展相应的惩办,并对惩办进展记录处理过程编号:P4处理过程名:工资管理输入:用户身份,工资记录输出:工资记录,工资查询处理说明:根据员工目前的工资情况,进展调薪的操作处理过程编号:P5处理过程名:调动管理输入:调动批复,用户身份,职务调动记录输出:职务调动记录,调动情况处理说明:根据调动批复的内容,更改员工的职务信息,并对调动情况进展记录处理过程编号:P6处理过程名:平安管理输入:管理员
21、情况输出:D6,P1,P2.1,P2.2,P3,P4,P5,P7.1,P7.2处理说明:建立管理人员记录表;通过用户名和口令,确认用户身份,保证系统平安性处理过程编号:P7.1处理过程名:上班管理输入:上班刷卡,用户身份,员工记录,出勤记录输出:出勤记录处理说明:根据输入的员工编号信息,记录上班时间,并判断是否迟到处理过程编号:P7.2处理过程名:下班管理输入:下班刷卡,用户身份,员工记录,出勤记录输出:出勤记录处理说明:根据输入的员工编号信息,记录下班时间,并判断是否早退处理过程编号:P8处理过程名:部门管理输入:部门情况,部门记录输出:部门记录处理说明:根据上级的调度,对现在公司的部门进展
22、领导人的调换,或者是增加或删除某一部门. .word. .第三章 概念构造设计根据系统需求分析,可以得出人事管理系统数据库的概念模型信息模型,以下列图是用E-R图表示的人事管理系统的概念模型。最后,对设计出的数据模型进展规X化处理,使数据模型满足第三X式。1局部E-R图将人事管理系统定名为“人事管理系统。 各实体的分E-R图,如图A、B、C、D所示:图A 员工实体图图B 部门实体图图C 管理人员实体图图D 刷卡机实体图2全局E-R图全局E-R图,如图E所示:图E 各实体间的联系. .word. .第四章 逻辑构造设计1关系模式将人事管理系统的E-R图转换为关系数据库的数据模型,其关系模式为:1
23、员工档案员工编号,性别,出生日期,民族,学历,职称,部门编号,其中员工编号为主码,部门编号为外码2管理员记录管理员账号,员工编号,密码,级别,其中管理员账号为主码,员工编号为外码3请假记录请假编号,员工编号,请假时间,请假天数,销假时间,审批领导号,批复结果请假编号为主码,其中员工编号外码4奖惩记录奖惩编号,员工编号,奖惩类型,奖惩金额,奖惩日期,批复部门号,批复原因,批复日期,奖惩编号为主码,其中员工编号和批复部门号为外码5职务调动记录调动编号,员工编号,调动前职务,调动后职务,调动日期,批复部门号,批复原因,批复日期,调动编号为主码,其中员工编号和批复部门号为外码6出勤记录出勤编号,员工编
24、号,上班时间,下班时间,刷卡日期,刷卡机号,出勤编号为主码,员工编号为外码7工资记录工资编号,员工编号,根本工资,奖金,罚款,起始时间,截止时间,发薪日期,工资编号为主码,员工编号为外码8部门记录部门编号,部门名称,领导人号,部门编号为主码9刷卡机记录刷卡机号2数据库构造的详细设计经过检查,此数据库的详细逻辑设计满足第3X式的要求。人事管理系统中各表的属性设计情况如下:表2-1 员工属性名数据类型长度允许空主码或索引约束条件员工编号Char5No主码Char10No性别Char2“男或“女出生日期Datetime索引XX号VarChar32No民族VarChar16学历VarChar8No索引
25、职称VarChar10部门编号Char4外码表2-2 管理人员属性名数据类型长度允许空主码或索引约束条件管理员账号Char4No主码员工编号Char4No外码密码Char6No输入时不显示级别Char4No“管理员或“系统管理员表2-3 请假记录属性名数据类型长度允许空主码或索引约束条件请假编号Char6No主码员工编号Char5No外码请假时间DatetimeNo值为假期开场日期请假天数int索引项销假时间DatetimeNo值为假期完毕日期审批人编号Char4索引项值为职工编号批复结果VarChar50表2-4 奖惩记录属性名数据类型长度允许空主码或索引约束条件奖惩编号Char6No主码员
26、工编号Char4No外码奖惩类型Char4No索引项奖惩金额Money奖惩日期Datetime值为员工受奖惩日期批复部门号Char4外码批复原因VarChar50批复日期DatetimeNo值为领导批复日期表2-5 职务调动属性名数据类型长度允许空主码或索引约束条件调动编号Char6No主码员工编号Char4No外码调动前职务VarChar10No索引调动后职务VarChar10No调动日期Datetime值为员工调动日期批复部门号Char4外码批复原因VarChar50批复日期Datetime值为领导批复日期表2-6 出勤属性名数据类型长度允许空主码或索引约束条件出勤编号Char6No主码员
27、工编号Char4No外码上班时间Datetime下班时间DatetimeNo刷卡日期DatetimeNo索引刷卡机号Char4No外码表2-7 工资属性名数据类型长度允许空主码或索引约束条件工资编号Char6No主码员工编号Char4No外码根本工资MoneyNo索引奖金Money罚款Money起始时间Datetime截止时间Datetime发薪日期DatetimeNo索引表2-8 部门属性名数据类型长度允许空主码或索引约束条件部门编号Char4No主码部门名称Char10No领导人号Char4No索引、外码值为职工编号表2-9 刷卡机属性名数据类型长度允许空主码或索引约束条件刷卡机号Char
28、4No主码. .word. .第五章 物理构造设计数据库物理设计阶段的任务是根据具体计算机系统(DBMS和硬件等)的特点,为给定的数据库系统确定合理的存储构造和存取方法。所谓的“合理主要有两个含义:一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。主要表达在后者。1建立索引1对表部门在属性列“领导人号上建立非聚集索引,2对表 员工 在属性列“出生日期上建立非聚集索引在属性列“学历上建立非聚集索引3对表 出勤 在属性列“上班日期上建立非聚集索引4对表 工资 在属性列“根本工资上建立非聚集索引5对表 职务调动 在属性列“调动前职务上建立非聚集索引6对表 奖惩记
29、录 在属性列“奖惩类型上建立非聚集索引7对表 请假记录 在属性列“请假天数上建立非聚集索引在属性列“审批人编号上建立非聚集索引2存储构造确定数据库的存储构造主要指确定数据的存放位置和存储构造,包括确定关系、索引、日志、备份等的存储安排及存储构造,以及确定系统存储参数的配置。将日志文件和数据库对象(表、索引等)分别放在不同的磁盘,可以改良系统的性能,提高系统的平安性。所以,系统应将日志文件和数据文件存放在不同磁盘上。3数据库的建立具体SQL代码如下:create database 人事管理系统on primary( name=人事管理系统, filename=D:SQLXX售后效劳.mdf, s
30、ize=10, filegrowth=10%, maxsize=50 )log on( name=人事管理系统_日志, filename=D:SQL人事管理系统_日志.ldf, size=5, filegrowth=10%, maxsize=10)Gocreate table 部门(部门编号 Char(4) primary key, 部门名 Char(10) not null,领导人号 Char(4) not null,)Gocreate table 管理人员( 管理员账号 char(4) primary key,职工编号 Char(4) not null,密码 Char(6) not nul
31、l,级别 Char(4) check(级别 in (管理员,系统管理员),foreign key (职工编号) references 员工(员工编号)Gocreate table 刷卡机( 刷卡机号 Char(4) primary key)Gocreate table 员工( 员工编号 Char(4) primary key, Char(10) not null,性别 Char(2) check(性别 in(男,女),出生日期 datetime,学历 VarChar(32) not null,XX号 VarChar(32) not null,民族 VarChar(16) not null, 职
32、称 Char(10),部门编号 char(4), )Gocreate table 出勤(出勤号 Char(6) primary key,员工编号 Char(4) not null,上班日期 datetime not null,上班时间 datetime not null,下班时间 datetime not null,刷卡机号 Char(4),foreign key (刷卡机号) references 刷卡机(刷卡机号),foreign key (员工编号) references 员工(员工编号)Gocreate table 工资(工资编号 Char(6) primary key,员工编号 Ch
33、ar(4) not null,根本工资 money not null,罚款 money,起始时间 Datetime,截止时间 Datetime,发薪日期 Datetime,foreign key (员工编号) references 员工(员工编号)Gocreate table 职务调动(调动编号 Char(6) not null primary key,员工编号 Char(4) not null,调动前职务 Char(10),调动后职务 Char(10),批复部门号 Char(4) not null,调动日期 Datetime,批复日期 Datetime,调动原因 VarChar(50), f
34、oreign key (员工编号) references 员工(员工编号), foreign key (批复部门号) references 部门(部门编号)Gocreate table 奖惩记录(奖惩编号 Char(6) not null primary key,员工编号 Char(4) not null,奖惩类型 Char(4),奖惩金额 money,奖惩日期 Datetime,批复部门号 Char(4),批复日期 Datetime,奖惩原因 VarChar(50), foreign key (员工编号) references 员工(员工编号), foreign key (批复部编号) re
35、ferences 部门(部门编号)Gocreate table 请假记录(请假编号 Char(6) not null primary key,员工编号 Char(4) not null,请假时间 Datetime,销假时间 datetime,请假天数 int ,审批人编号 Char(4), foreign key (员工编号) references 员工(员工编号)Go/*索引的建立*/create index部门_领导人号_index on部门(领导人号)create index 出勤_学历_index on 出勤(学历 )create index 出勤_出生日期_index on 员工(出生日期 )create index 出勤_上班日期_index on 出勤(上班日期 )create index 工资_根本工资_index on 工资(根本工资 )create index 职务调动_调动前职务_index on 职务调动(调动前职务 )create index 奖惩记录_奖惩类型_index on
限制150内