人事管理系统数据库课程设计Word格式文档下载.docx
《人事管理系统数据库课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《人事管理系统数据库课程设计Word格式文档下载.docx(21页珍藏版)》请在冰豆网上搜索。
![人事管理系统数据库课程设计Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2023-2/4/0d4eaf80-79e9-4e04-a8dd-c06c5888c992/0d4eaf80-79e9-4e04-a8dd-c06c5888c9921.gif)
1)对员工上班刷卡的记录进行统一编号;
登记员工上班时间、签到类型(准时、迟到).
2)对员工下班刷卡的记录进行统一编号;
登记员工上班时间、签到类型(准时、早退)。
(5)请销假管理
1)对员工请假的记录进行统一编号;
登记员工请假时间、请假类型。
2)对员工销假的记录进行统一编号;
登记员工销假时间、请假类型,检查是否超期。
(6)工资管理
1)对公司里所有员工的工资记录进行统一编号,建立工资记录表。
(7)部门管理
1)对公司所有的部门进行编号,建立部门记录。
2.2系统数据流程图
经过详细的调查,弄清了系统现行的业务流程.在此基础上,构造出系统的逻辑模型,并通过数据流程图表示。
人事管理系统的顶层数据流程图如图1所示。
图1
注:
图中虚线表示的数据流是员工信息。
在人事管理系统顶层流程图中,“请假管理”和“出勤管理”两个处理框所表示的功能不是很具体,需对他们进一步细化。
请假管理细化流程图如图2所示。
图2
出勤管理细化流程图如图3所示。
图3
最终,经过整理后得出细化后的系统数据流程图。
如图4所示。
图4
3系统数据字典
人事管理系统数据流程图中,数据信息和处理过程还需要通过数据字典来描述。
在本文的数据字典中,主要对数据流图中的数据流、数据存储和处理过程进行说明.
(1)主要的数据流定义
1)数据流名称:
员工情况
位置:
员工→P1.
定义:
员工情况=姓名+性别+出生日期+民族+学历+职称。
数据流量:
根据公司的员工具体录用情况来确定。
说明:
要对每一位被聘用的新员工进行唯一编号。
2)数据流名称:
奖惩情况
P3→员工
定义:
奖惩情况=员工流水号+奖惩类型+奖惩金额+奖惩年月日.
根据公司的具体情况来确定。
要对每一次的奖惩记录进行唯一编号。
3)数据流名称:
奖惩批复
上级→P3
奖惩批复=奖惩类型+批复部门号+批复原因+批复日期.
根据公司的具体情况来确定.
具体应用中,批复原因可以省略。
4)数据流名称:
调动情况
位置:
P5→员工
调动情况=员工号+调动前职务+调动后职务+调动日期。
数据流量:
员工号和调动日期可以唯一确定一个调动情况。
5)数据流名称:
调动批复
上级→P5
调动批复=批复部门号+批复原因+批复日期.
批复原因可以省略。
6)数据流名称:
上班刷卡
员工→P7。
1
上班刷卡=员工号+上班刷卡时间+刷卡机号。
根据公司的具体规模情况来确定。
说明:
上班刷卡时间会汇入到出勤记录中。
7)数据流名称:
下班刷卡
2
下班刷卡=员工号+下班刷卡时间+刷卡机号.
下班刷卡时间会汇入到出勤记录中。
8)数据流名称:
工资查询
P4→员工
工资查询=员工号+基本工资+奖金+罚款+超始时间+截止时间+发薪日期.
根据员工号和发薪日期可以唯一确定一个工资记录。
9)数据流名称:
请假申请
员工→P2。
请假申请=员工号+请假时间+请假天数.
员工号和请假时间可以唯一确定一个请假记录。
10)数据流名称:
请假批复
上级→P2.2
请假批复=审批人+批复结果.
批复结果的类型只能是(批准、拒绝)。
11)数据流名称:
销假申请
销假申请=员工号+销假时间。
针对销假申请没用单独建立销假记录表,在这里将销假记录和请假记录进行了合并。
因为在一般情况下,请假是不能够进行嵌套的.
12)数据流名称:
管理员情况
管理员→P6
用户身份=员工编号。
要对每一位管理员建立唯一的账号.
13)数据流名称:
用户身份
安全管理→{P1,P2。
1,P2.2,P3,P4,P5,P7.1,P7。
2}
用户身份=[非法用户|内部管理员|服务管理员]
不同的用户身份对应不同的操作权限,对应着不同的安全级别。
14)数据流名称:
部门情况
上级→部门情况
部门情况=部门号+部门名称+领导人号
部门号是主码。
(2)主要的数据存储定义
1)数据存储编号:
员工记录D1
输入:
P1
输出:
P1,P7。
1,P7。
2,P2。
1,P2.2
数据结构:
员工记录=姓名+性别+出生日期+民族+学历+职称+员工编号.
数据量和存取频度:
根据公司的具体规模情况来确定.
存取方式:
联机处理;
检索和更新;
以随机检索为主。
员工编号具有唯一性和非空性;
性别只能是男或女;
主码是员工编号。
2)数据存储编号:
请假记录D2
P2.1,P2.2
P2。
数据结构:
请假记录=员工号+请假时间+请假天数+销假时间。
数据量和存取频度:
联机处理;
检索和更新;
以更新操作为主。
主码设为请假时间和员工号;
员工号是外码,参照表是员工记录。
3)数据存储编号:
奖惩记录D3
P3
输出:
奖惩记录=员工流水号+奖惩类型+奖惩金额+奖惩时间+批复部门号+批复原因+批复日期。
主码设为奖惩时间和员工号;
员工号是外码,参照表是员工记录。
4)数据存储编号:
工资记录D4
P4
工资记录=员工号+基本工资+奖金+罚款+超始时间+截止时间+发薪日期.
以更新操作为主.
主码设为发薪日期和员工号;
员工号是外码,参照表是员工记录.
5)数据存储编号:
职务调动记录D5
P5
职务调动记录=员工号+调动前职务+调动后职务+调动日期+批复部门号+批复原因+批复日期.
主码设为调动日期和员工号;
6)数据存储编号:
管理人员记录D6
输入:
P6
管理人员记录=用户密码+职工号+密码+管理员账号。
主码设为管理员账号。
7)数据存储编号:
出勤记录D7
P7.1,P7.2
P7。
出勤记录=员工号+上班刷卡时间+下班刷卡时间+刷卡日期。
主码设为员工号和刷卡日期;
8)数据存储编号:
部门记录D8
P8
部门记录=部门号+部门名称+领导人号.
以检索操作为主。
主码设为部门号。
(3)主要的处理过程
1)处理过程编号:
处理过程名:
档案管理
用户身份,员工记录,员工情况
员工记录
处理说明:
根据员工的聘用、解聘建立或删除员工记录,以及在后续的过程中,以管理员身份对员工的记录进行修改。
2)处理过程编号:
处理过程名:
销假管理
销假申请,请假批复,用户身份,员工记录,销假记录
请假记录
处理说明:
根据员工的销假申请,把销假时间录入到相应的请假记录中。
3)处理过程编号:
请假管理
请假申请,请假批复,用户身份,员工记录,请假记录
根据员工的请假申请和批复情况,进行请假表的登记。
4)处理过程编号:
奖惩管理
用户身份,奖惩批复,奖惩记录
奖惩记录,奖惩情况
根据奖惩批复的要求对员工进行相应的惩处,并对惩处进行记录.
5)处理过程编号:
工资管理
用户身份,工资记录
工资记录,工资查询
根据员工目前的工资情况,进行调薪的操作。
6)处理过程编号:
调动管理
调动批复,用户身份,职务调动记录
职务调动记录,调动情况
根据调动批复的内容,更改员工的职务信息,并对调动情况进行记录。
7)处理过程编号:
安全管理
D6,P1,P2。
1,P2。
2,P3,P4,P5,P7.1,P7.2
建立管理人员记录表;
通过用户名和口令,确认用户身份,保证系统安全性.
8)处理过程编号:
上班管理
上班刷卡,用户身份,员工记录,出勤记录
出勤记录
根据输入的员工号信息,记录上班时间,并判断是否迟到。
9)处理过程编号:
P7.2
下班管理
下班刷卡,用户身份,员工记录,出勤记录
根据输入的员工号信息,记录下班时间,并判断是否早退。
10)处理过程编号:
部门管理
部门情况,部门记录
部门记录
根据上级的调度,对现在公司的部门进行领导人的调换,或者是增加或删除某一部门。
3数据库结构设计
1概念结构设计
根据系统需求分析,可以得出人事管理系统数据库的概念模型(信息模型),图5是用E-R图表示的人事管理系统的概念模型。
最后,对设计出的数据模型进行规范化处理,使数据模型满足第三范式.
3.2逻辑结构设计
将人事管理系统的E—R图转换为关系数据库的数据模型,其关系模式为:
1)员工档案(员工编号+姓名+性别+出生日期+民族+学历+职称+部门号),其中员工编号为主码,部门号为外码;
2)管理员记录(管理员账号,员工编号,密码,级别),其中管理员账号为主码,员工编号为外码;
3)请假记录(请假编号+员工编号+请假时间+请假天数+销假时间+审批领导号+批复结果)
请假编号为主码,其中员工编号外码。
4)奖惩记录(奖惩编号+员工编号+奖惩类型+奖惩金额+奖惩日期+批复部门号+批复原因+
批复日期),奖惩编号为主码,其中员工编号和批复部门号为外码;
5)职务调动记录(调动编号+员工编号+调动前职务+调动后职务+调动日期+批复部门号+批复原因+批复日期),调动编号为主码,其中员工编号和批复部门号为外码;
6)出勤记录(出勤编号+员工号+上班刷卡时间+下班刷卡时间+刷卡日期),出勤编号为主码,员工号为外码;
7)工资记录(工资编号+员工号+基本工资+奖金+罚款+起始时间+截止时间+发薪日期),工资编号为主码,员工号为外码.
8)部门记录(部门编号+名称+领导人号),部门编号为主码。
9)刷卡机记录(刷卡机号)。
将人事管理系统定名为“人事管理系统”。
各实体的分E—R图,如图A,B,C所示:
3.3数据库结构的详细设计
经过检查,此数据库的详细逻辑设计满足第3范式的要求。
人事管理系统中各表的属性设计情况如下表1:
列名
数据类型
长度
是否允许为空
编号
varchar
50
否
姓名
是
性别
char
10
出生日期
datetime
8
参加工作日期
住址
电话
来本单位的时间
职称名
评定时间
工龄年数
int
4
登录账号
密码
工资级别
基本工资
money
职务补助
房补
工龄津贴
金额
编号1
内容
4物理设计
4.1数据库物理设计阶段的任务是根据具体计算机系统(DBMS和硬件等)的特点,为给定的数据库系统确定合理的存储结构和存取方法。
所谓的“合理”主要有两个含义:
一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度.主要体现在后者。
(1)建立索引:
①对表部门在属性列领导人号上建立非聚集索引,
②对表员工在属性列出生日期上建立非聚集索引,在属性列学历上建立非聚集索引
③对表出勤在属性列上班日期上建立非聚集索引
④对表工资在属性列基本工资上建立非聚集索引
⑤对表职务调动在属性列调动前职务上建立非聚集索引.
⑥对表奖惩记录在属性列奖惩类型上建立非聚集索引.
⑦对表请假记录在属性列“请假天数"
上建立非聚集索引,在属性列“审批人编号”上建立非聚集索引。
(2)存储结构
确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。
将日志文件和数据库对象(表、索引等)分别放在不同的磁盘,可以改进系统的性能,提高系统的安全性。
所以,系统应将日志文件和数据文件存放在不同磁盘上.
4。
2数据库的建立
职工表的创建语句如下:
CREATETABLE[职工表](
[编号]varchar(50)COLLATEChinese_PRC_CI_ASNOTNULL,
[姓名]varchar(50)COLLATEChinese_PRC_CI_ASNULL,
[性别]char(10)COLLATEChinese_PRC_CI_ASNULL,
[出生日期]datetimeNULL,
[参加工作日期]datetimeNULL,
[住址]varchar(50)COLLATEChinese_PRC_CI_ASNULL,
[电话]varchar(50)COLLATEChinese_PRC_CI_ASNULL,
[来自本单位的时间]datetimeNULL,
[职称名]varchar(50)COLLATEChinese_PRC_CI_ASNULL,
[评定时间]datetimeNULL,
[工龄年数]intNULL,
);
职称表的创建语句如下:
CREATETABLE[职称表](
[职称名]varchar(50)COLLATEChinese_PRC_CI_ASNOTNULL,
[工资级别]varchar(50)COLLATEChinese_PRC_CI_ASNULL,
[基本工资]moneyNULL,
[职务补助]moneyNULL,
[房补]moneyNULL,
);
管理员表的创建:
CREATETABLE[管理员表](
[登录账号]char(10)COLLATEChinese_PRC_CI_ASNOTNULL,
[密码]char(10)COLLATEChinese_PRC_CI_ASNOTNULL,
);
工龄表的创建语句如下:
CREATETABLE[工龄表](
[工龄年数]intNOTNULL,
[工龄津贴]moneyNULL,
);
奖惩表的创建语句如下:
CREATETABLE[奖惩](
[编号1]varchar(50)COLLATEChinese_PRC_CI_ASNOTNULL,
[金额]moneyNULL,
[内容]varchar(50)COLLATEChinese_PRC_CI_ASNULL,
洗理费表的创建语句如下:
CREATETABLE[洗理费](
[性别][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,
[金额][money]NULL,
6总结
这次课程设计中,我学到了很多的东西,同时也遇到了很大的困难,不懂的地方通过看参考书才明白(这是我第二次补做,第一次因为结构方面不完整就又做了),所以,在这期间我对自己的能力也有了一个清楚的认识,虽然困难重重,但是我没放弃,也一直坚持着,虽然有累,但是最终也做出来了,替自己加油!