企业人事管理系统.docx
《企业人事管理系统.docx》由会员分享,可在线阅读,更多相关《企业人事管理系统.docx(18页珍藏版)》请在冰豆网上搜索。
![企业人事管理系统.docx](https://file1.bdocx.com/fileroot1/2023-1/21/8390127a-f537-446f-af61-c2c27e31bf1a/8390127a-f537-446f-af61-c2c27e31bf1a1.gif)
企业人事管理系统
课程设计报告
课程名称数据库课程设计
设计题目企业人事管理系统
专业班级软件1241
姓名张博亚
学号1204431108
指导教师张秀坤、边蓓蓓
起止时间2014年3月10日-3月14日
成绩评定
考核
内容
设计
表现
设计
报告
答辩
综合
评定
成绩
计算机技术与工程学院
课程设计考核和成绩评定办法
1.课程设计的考核由指导教师根据设计表现、设计报告、设计成果、答辩等几个方面,给出各项权重,综合评定。
该设计考核教研室主任审核,主管院长审批备案。
2.成绩评定采用五级分制,即优、良、中、及格、不及格。
3.参加本次设计时间不足三分之二或旷课四天以上者,不得参加本次考核,按不及格处理。
4.课程设计结束一周内,指导教师提交成绩和设计总结。
5.设计过程考核和成绩在教师手册中有记载。
课程设计报告内容
课程设计报告内容、格式各专业根据专业不同统一规范,经教研室主任审核、主管院长审批备案。
注:
1.课程设计任务书和指导书在课程设计前发给学生,设计任务书放置在设计报告封面后和正文目录前。
2.为了节省纸张,保护环境,便于保管实习报告,统一采用A4纸,实习报告建议双面打印(正文采用宋体五号字)或手写。
2013-2014第2学期《数据库课程设计》任务书
班级:
软件1241、2;指导教师:
张秀坤、边蓓蓓、赵慧玲、孟宪颖;
地点:
计算机实验室;时间:
第3周。
一、课程设计题目
选择下列题目中的一种:
1.小区物业管理系统2.高校工资管理系统
3.教材管理系统4.酒店管理系统
5.高校教职工管理系统6.图书管理系统
7.火车订票管理系统8.企业人事管理系统
9.商品库存管理系统10.医院药品管理系统
11.学生成绩管理系统12.高校学籍管理系统
13.航空订票管理系统14.学费管理系统
15.城市居民户籍管理系统16.超市管理系统
17.学费管理系统18.车辆管理系统
19.房地产管理系统20.企业物资管理系统
21、其它自选题目
注:
每个学生可根据自己的学识水平,设计能力,在指导教师指导下选择所设计的题目。
二、目的与要求
1、目的
通过课程设计,让学生能够全面了解数据库应用系统的整个开发过程,验证课堂教学中的理论;掌握数据库系统的基本概念、基本原理及应用技术;掌握SQL语言的定义和各种操作能力,进一步掌握SQL语言的数据库编程技能;学会利用课堂上已学过的数据库知识进行数据库设计;使学生对开发信息管理系统有一个总体认识,可使学生得到很好锻炼,为以后学习、工作打下坚实基础。
2、基本要求
(1)要求独立完成自己题目的课程设计,如有抄袭,成绩按不及格处理。
(2)要求学生利用数据库原理课程所学知识和方法独立完成所布置题目。
(3)要求所设计的系统规模适中,用SQL语句实现基本的增、删、改、查询功能。
(4)数据库中至少要包含三个表,且每个表都要满足3NF,指明主码、外码等。
(5)尽量多的使用SQLServer2005中的对象,如:
视图、触发器、约束、默认、规则、索引等。
(6)简单的系统与功能分析,建立数据结构表。
(7)每天下机时,要及时将自己的开发拷贝带走;上机期间,学生要服从指导教师的统一安排,遵守机房制度;严格遵守纪律,不迟到,不早退,无故缺勤者,成绩按不及格处理。
三、设计方法
(1)设计题目:
企业人事管理系统
(2)应用系统背景:
通过对现行人事管理系统的调查,明确了人事管理系统由档案管理、职务调动管理、奖惩管理、考勤管理、工资管理、请销假管理组成。
(3)需求分析:
(1)员工档案管理
1)对公司里所有员工进行统一编号;将每一位员工的信息保存在员工档案记录中。
2)对新聘用的员工,将其信息加入到员工档案记录中;对于解聘的员工,将其信息从员工档案记录中删除。
3)当员工的信息发生变动时,修改员工档案记录中相应的属性。
(2)员工职务调动管理
对公司里所有员工的职务记录进行统一编号;登记员工调动前后的具体职务,以及调动时间。
(3)奖惩管理
对公司里所有员工的奖惩记录进行统一编号;登记员工奖惩的原因,所受奖惩类型,奖惩时间。
(4)考勤管理
1)对员工上班刷卡的记录进行统一编号;登记员工上班时间、签到类型(准时、迟到)。
2)对员工下班刷卡的记录进行统一编号;登记员工上班时间、签到类型(准时、早退)。
(5)请销假管理
1)对员工请假的记录进行统一编号;登记员工请假时间、请假类型。
2)对员工销假的记录进行统一编号;登记员工销假时间、请假类型,检查是否超期。
(6)工资管理
1)对公司里所有员工的工资记录进行统一编号,建立工资记录表。
(7)部门管理
1)对公司所有的部门进行编号,建立部门记录。
(4)数据流图:
图1
出勤管理细化流程图如图2所示。
图2
(5)数据字典:
1)数据流名称:
员工情况
位置:
员工→P1。
定义:
员工情况=姓名+性别+出生日期+民族+学历+职称。
数据流量:
根据公司的员工具体录用情况来确定。
说明:
要对每一位被聘用的新员工进行唯一编号。
2)数据流名称:
奖惩情况
位置:
P3→员工
定义:
奖惩情况=员工流水号+奖惩类型+奖惩金额+奖惩年月日。
数据流量:
根据公司的具体情况来确定。
说明:
要对每一次的奖惩记录进行唯一编号。
3)数据流名称:
奖惩批复
位置:
上级→P3
定义:
奖惩批复=奖惩类型+批复部门号+批复原因+批复日期。
数据流量:
根据公司的具体情况来确定。
说明:
具体应用中,批复原因可以省略。
4)数据流名称:
调动情况
位置:
P5→员工
定义:
调动情况=员工号+调动前职务+调动后职务+调动日期。
数据流量:
根据公司的具体情况来确定。
说明:
员工号和调动日期可以唯一确定一个调动情况。
8)数据流名称:
工资查询
位置:
P4→员工
定义:
工资查询=员工号+基本工资+奖金+罚款+超始时间+截止时间+发薪日期。
数据流量:
根据公司的具体情况来确定。
说明:
根据员工号和发薪日期可以唯一确定一个工资记录。
9)数据流名称:
请假申请
位置:
员工→P2.2
定义:
请假申请=员工号+请假时间+请假天数。
数据流量:
根据公司的具体情况来确定。
说明:
员工号和请假时间可以唯一确定一个请假记录。
10)数据流名称:
请假批复
位置:
上级→P2.2
定义:
请假批复=审批人+批复结果。
数据流量:
根据公司的具体情况来确定。
说明:
批复结果的类型只能是(批准、拒绝)。
13)数据流名称:
用户身份
位置:
安全管理→{P1,P2.1,P2.2,P3,P4,P5,P7.1,P7.2}
定义:
用户身份=[非法用户|内部管理员|服务管理员]
数据流量:
根据公司的具体情况来确定。
说明:
不同的用户身份对应不同的操作权限,对应着不同的安全级别。
14)数据流名称:
部门情况
位置:
上级→部门情况
定义:
部门情况=部门号+部门名称+领导人号
数据流量:
根据公司的具体情况来确定。
说明:
部门号是主码。
(6)E-R图:
A)员工实体图
B)部门实体图
C)管理人员实体图
D)刷卡机实体图
全局E-R图,如图E所示:
E)各实体间的联系图
(7)数据关系模型:
表名
属性名
数据类型
长度
允许空
主码或索引
约束条件
部门
部门号
Char
4
No
主码
部门名
Char
10
No
领导人号
Char
4
No
索引、外码
值为职工编号
管理人员
管理员账号
Char
4
No
主码
职工编号
Char
4
No
外码
密码
Char
6
No
输入时不显示
级别
Char
4
No
“管理员”或“系统管理员”
刷卡机
刷卡机号
Char
4
No
主码
员工
员工编号
Char
4
No
主码
姓名
Char
10
No
学历
VarChar
8
No
索引项
性别
Char
2
“男”或“女”
出生日期
Datetime
索引项
身份证号
VarChar
32
No
民族
VarChar
16
职称
VarChar
10
部门号
Char
4
外码
出勤号
Char
6
No
主码
出勤
员工编号
Char
4
No
外码
上班日期
Datetime
No
索引
上班时间
Datetime
下班时间
Datetime
No
刷卡机号
Char
4
No
外码
工资编号
Char
6
No
主码
工资
员工编号
Char
4
No
外码
基本工资
Money
No
索引
罚款
Money
起始时间
Datetime
截止时间
Datetime
发薪日期
Datetime
No
索引
调动编号
Char
6
No
主码
职务调动
员工编号
Char
4
No
外码
调动前职务
VarChar
10
No
索引项
调动后职务
VarChar
10
No
调动部门号
Char
4
外码
调动日期
Datetime
值为员工调动日期
批复日期
Datetime
值为领导批复日期
调动原因
VarChar
50
奖惩编号
Char
6
No
主码
奖惩记录
员工编号
Char
4
No
外码
奖惩类型
Char
4
No
索引项
奖惩金额
Money
奖惩日期
Datetime
值为员工受奖惩日期
批复部门号
Char
4
外码
批复日期
Datetime
No
值为领导批复日期
奖惩原因
VarChar
50
请假编号
Char
6
No
主码
请假记录
员工编号
Char
5
No
外码
请假时间
Datetime
No
值为假期开始日期
销假时间
Datetime
No
值为假期结束日期
请假天数
int
索引项
审批人编号
Char
4
索引项
值为职工编号
(8)建立数据库对象:
具体SQL代码如下:
createtable部门
(
部门号Char(4)primarykey,
部门名Char(10)notnull,
领导人号Char(4)notnull,
)
createtable管理人员
(
管理员账号char(4)primarykey,
职工编号Char(4)notnull,
密码Char(6)notnull,
级别Char(4)check(级别in('管理员','系统管理员')),
foreignkey(职工编号)references员工(员工编号)
)
createtable刷卡机
(刷卡机号Char(4)primarykey
)
createtable员工
(
员工编号Char(4)primarykey,
姓名Char(10)notnull,
性别Char
(2)check(性别in('男','女')),
出生日期datetime,
学历VarChar(32)notnull,
身份证号VarChar(32)notnull,
民族VarChar(16)notnull,
职称Char(10),
部门号char(4),
)
createtable出勤
(
出勤号Char(6)primarykey,
员工编号Char(4)notnull,
上班日期datetimenotnull,
上班时间datetimenotnull,
下班时间datetimenotnull,
刷卡机号Char(4),
foreignkey(刷卡机号)references刷卡机(刷卡机号),
foreignkey(员工编号)references员工(员工编号)
)
createtable工资
(
工资编号Char(6)primarykey,
员工编号Char(4)notnull,
基本工资moneynotnull,
罚款money,
起始时间Datetime,
截止时间Datetime,
发薪日期Datetime,
foreignkey(员工编号)references员工(员工编号)
)
createtable职务调动
(
调动编号Char(6)notnullprimarykey,
员工编号Char(4)notnull,
调动前职务Char(10),
调动后职务Char(10),
调动部门号Char(4)notnull,
调动日期Datetime,
批复日期Datetime,
调动原因VarChar(50),
foreignkey(员工编号)references员工(员工编号),
foreignkey(调动部门号)references部门(部门号)
)
createtable奖惩记录
(
奖惩编号Char(6)notnullprimarykey,
员工编号Char(4)notnull,
奖惩类型Char(4),
奖惩金额money,
奖惩日期Datetime,
批复部门号Char(4),
批复日期Datetime,
奖惩原因VarChar(50),
foreignkey(员工编号)references员工(员工编号),
foreignkey(批复部门号)references部门(部门号)
)
createtable请假记录
(
请假编号Char(6)notnullprimarykey,
员工编号Char(4)notnull,
请假时间Datetime,
销假时间datetime,
请假天数int,
审批人编号Char(4),
foreignkey(员工编号)references员工(员工编号)
)
/*索引的建立*/
createindex部门_领导人号_indexon部门(领导人号)
createindex员工_学历_indexon员工(学历)
createindex员工_出生日期_indexon员工(出生日期)
createindex出勤_上班日期_indexon出勤(上班日期)
createindex工资_基本工资_indexon工资(基本工资)
createindex职务调动_调动前职务_indexon职务调动(调动前职务)
createindex奖惩记录_奖惩类型_indexon奖惩记录(奖惩类型)
createindex请假记录_请假天数_indexon请假记录(请假天数)
选择“增加”后出现下图:
管理员还可以点击“删除”进行对数据库中的职工信息去掉。
管理员还可以通过“修改”来对数据库的职工信息进行修改,来实现员工信息的实时跟新。
四、总结
一周的数据库系统项目实训,让我在各方面都有了一定的提高。
通过本次试验我更加熟悉掌握了SQLServer2005数据库的创建、查询、创建存储过程。
基本达到了要求的技能目标:
能熟练使用SQLServer2005完成基本操作;能完成较复杂的查询操作,培养自己的自学能力,培养自己的解决问题的能力。
存储过程补充知识点的学习,给了我一个拓展知识的空间。
通过实训,我从单一,片面的学习进入了全面,系统的学习。
并在实训中加深了对数据库的理解,并积累了经验。
通过项目设计,我加深了对SQLServer2005数据库知识的学习和理解。
以前的学习中,我不太注意知识的回顾和总结;但现在为了使设计的项目更加完整,科学;在项目设计开始前我便把所有知识和设计要点复习了一遍,并进行了总结,这样在项目设计的时候便能够得心应手。
项目设计后,实践又加深了我对知识的理解。
这次实训使我学到了很多书上没有的知识,同时也使我清楚地认识到自己优点和缺点,自己存在的不足。
所以,我会努力学习,尽快地提高自己的能力。
参考文献:
[1]萨师煊,王珊编著.数据库系统概论.北京.高等教育出版社,2006.05
[2]詹英.SQLSever2005教程.北京:
清华大学出版社,2008.09
[3]数据库原理与SQLSever2005应用教程.北京:
机械工业出版社,2012.01