资源描述
人事管理系统
目录
一、摘要………………………………………..3
二、序言………………………………………… 3
三、系统设计………………………………………… 3
3.1设计思想…………………………………………3
3.2 系统功效分析…………………………………………3
3.3 系统总体功效模块设计…………………………………………4
四、数据库设计……………………………………4
4.1 数据库需求分析……………………………………4
4.2数据库概念结构设计……………………………………5
(1)分E-R图……………………………………5
(2)总E-R图……………………………………7
4.3 数据库逻辑结构设计……………………………………7
(1).E-R图转化为关系模型……………………………………7
(2) 2.各关系模型表……………………………………8
五、数据库源码…………………………………………10
5.1建立数据库MM……………………………………10
5.2建立了数据库各基础表及各表主、外键设置………………11
5.3对各表完整性等进行设置……………………………………13
六、运行平台………………………………..14
七、总结…………………………………………….14
一、摘要
为了完善全方面人事管理功效,使人事企业管理步骤合理化和自动化处理和分析多种有价值信息,以支持决议者制订人事企业管理战略发展计划。该系统采取了SQLServer数据库开发环境,使用专用数据库接口连接,其存取速度快、安全性好,便于管理和操作。
整个系统从符合操作简便、界面友好、灵活、实用、安全要求出发,完成人事管理全过程,包含职员基础信息、学历信息、婚姻情况、考勤信息、工资信息、 职员多种信息修改 、对于转出、辞职、退休职员信息删除等管理工作。经过实际使用证实,该文所设计人事管理系统能够满足企业人事管理方面需要。
二、序言
伴随计算机技术飞速发展,计算机在企业管理中应用普及,利用计算机实现企业人事档案管理势在必行。目前企业信息管理系统正在从C/S结构向B/S结构转移,不过因为安全性等方面原因,C/S结构管理信息系统仍然占据企业管理信息系统主流。
人事管理系统是现代企业管理工作不可缺乏一部分,是适应该代企业制度要求、推进企业劳感人事管理走向科学化、规范化必需条件。
人事管理系统能够用于支持企业完成劳感人事管理工作,有以下3个方面目标。
1. 支持企业实现规范化管理。
2. 支持企业高效率完成劳感人事管理日常业务,包含新职员加入时人事档案建立,老职员转出、辞职、退休等。
3. 支持企业进行劳感人事管理及其相关方面科学决议,如企业领导依据现有职员数目决定招聘人数等。
三、系统设计
3.1设计要求
()信息要求
本系统应该包含和人事管理相关信息,如部门信息、职员信息、,其中职员信息应该包含职员基础信息(如职员编号、姓名、性别等)、职员其它信息(如关键社会关系、奖惩情况等)
3.2 系统功效分析
该系统需要完成以下功效:
1. 职员多种信息输入,包含职员基础信息、学历信息、婚姻情况、考勤信息、工资信息。
2. 职员多种信息修改。
3. 对于转出、辞职、退休职员信息删除。
4. 根据某种条件,查询统计符合条件职员信息。
5. 对查询、统计结果打印输出。
6. 人事系统使用帮助。
3.3 系统总体功效模块设计
系统总体功效模块包含职员基础情况、工作部门信息、职员职称信息、职员婚姻情况、职员学历信息、职员考勤管理、职员工资管理等7个模块,其模块结构图以下:
数据库应用程序
职员基础情况
职员婚姻情况
职员学历信息
职员考勤管理
职员工资管理
职员职称信息
工作部门信息
用户登录及身份验证
四、数据库设计
数据库结构设计好坏将直接对应用系统效率和和实现效果产生影响,好数据库结构设计会降低数据库存放量,数据完整性和一致性比较高,系统含有较快响应速度等等。
4.1 数据库需求分析
1. 职员基础情况。包含数据项有职员号、职员姓名、性别、身份证号、生日、籍贯、民族、政治面貌、血型、家庭住址、联络电话。
2. 工作部门信息。包含数据项有部门号、部门名称、部门地址。
3. 职员职称信息。包含数据项有职称号、职称名称。
4. 职员婚姻情况。包含数据项有职员号、爱人代号、爱人姓名、爱人籍贯、爱人民族、出生日期、工作单位、政治面貌、工作职称。
5. 职员学历信息。包含数据项有职员号、学位证书编号、学历、专业、毕业时间、毕业院校。
6. 职员考勤信息。包含数据项有职员号、职员姓名、日期,本月天数,公休假天数,应出勤天数,请假,节假日加班,其它加班。
7. 职员工资信息。包含数据项有职员号,姓名,底薪,补助,奖金,加班费,代扣养老金,代扣医疗保险,代扣住房公积金,所得税,实发工资。
4.2数据库概念结构设计
依据以上分析计划出实体有:职员实体、部门实体、职称实体、爱人实体、学历实体、考勤实体、工资实体。
职员实体E-R图
职员
职员号
职员姓名
性别
身份证号
籍贯
出生日期
血型
政治面貌
民族
联络电话
家庭住址
联络电话
部门实体E-R图
部门
部门号
部门名
部门地址
职称实体E-R图
职称
职称号
职称名
爱人实体E-R图
爱人
爱人姓名
工作单位
工作职称
籍贯
出生日期
政治面貌
民族
爱人代号
学历实体E-R图
学历
毕业院校
学历
毕业时间
专业
学位证书编号
考勤实体E-R图
考勤
职员姓名
应出勤天数
公休假天数
日期
请假
节假日加班
本月天数
工资实体E-R图
工资
职员姓名
代扣医疗保险
公休假天数
补助
底薪
加班费
代扣养老金
奖金
代扣住房公积金
所得税
实发工资
总体E-R图
拥有
职称
职员
工作
部门
m
1
n
1
拥有
学历
工资
取得
结婚
爱人
存在
考勤
m
1
m
1
m
1
1
1
1
参与工作时间
结婚时间
4.3 数据库逻辑结构设计
1.E-R图转化为关系模型(蓝色表示主键)
职员(职员号、职员姓名、性别、身份证号、生日、籍贯、民族、健康情况、政治面貌、血型、家庭住址、联络电话)
部门(部门号、职员号、部门名称、部门地址、参与工作时间)
职称(职称号、职员号、职称名称)
爱人(爱人代号、职员号、爱人姓名、爱人籍贯、爱人民族、出生日期、结婚时间、工作单位、政治面貌、工作职称)
学历(学位证书编号、职员号、学历、专业、毕业时间、毕业院校)
考勤(职员号、日期、职员姓名、本月天数、公休假天数、应出勤天数、请假、节假日加班、其它加班)
工资(职员号,姓名,底薪,补助,奖金,加班费,代扣养老金,代扣医疗保险,代扣住房公积金,所得税,实发工资)
2.各关系模型表
表一 EMPLOYEE职员表
列名
数据类型及长度
可否为空
说明
ENO
CHAR(6)
NOT NULL
职员号(主键)
ENAME
VARCHAR(10)
NULL
职员姓名
EGENDER
VARCHAR(2)
NULL
性别
EBIRTHDAY
DATE
NULL
出生日期
EHOMETOWN
VARCHAR(8)
NULL
籍贯
ENATION
VARCHAR(10)
NULL
民族
EID
CHAR(2)
NULL
身份证号
EHEALTH
VARCHAR(20)
NULL
健康情况
EZZMM
VARCHAR(4)
NULL
政治面貌
EBLOOD
VARCHAR(2)
NULL
血型
EHOMEADRESS
VARCHAR(10)
NULL
家庭住址
ETELENO
CHAR(10)
NULL
联络电话
表二DEPARTMENT部门表
列名
数据类型及长度
可否为空
说明
ENO
CHAR(6)
NOT NULL
职员号(外键)
DNO
CHAR(6)
NOT NULL
部门号(主键)
DNAME
VARCHAR(10)
NULL
部门名称
DADD
VARCHAR(20)
NULL
部门地址
DTIME
DATE
NULL
参与工作时间
表三FUNCTION职称表
列名
数据类型及长度
可否为空
说明
FNO
CHAR(6)
NOT NULL
职称号(主键)
FNAME
VARCHAR(10)
NULL
职称名称
ENO
CHAR(6)
NOT NULL
职员号(外键)
表四 MARRIAGE婚姻表
ENO
CHAR(6)
NOT NULL
职员号(外键)
LNO
CHAR(6)
NOT NULL
爱人代号(主键)
LNAME
VARCHAR(10)
NULL
爱人姓名
LHOMETOWN
VARCHAR(8)
NULL
爱人籍贯
LNATION
VARCHAR(10)
NULL
爱人民族
LBIRTHDAY
DATE
NULL
出生日期
MARRIAGEDATE
DATE
NULL
结婚时间
LCOMPANY
VARCHAR(20)
NULL
工作单位
LZZMM
VARCHAR(4)
NULL
政治面貌
LJOB
VARCHAR(10)
NULL
工作职称
表五SCHOOL学历表
列名
数据类型及长度
可否为空
说明
ENO
CHAR(6)
NOT NULL
职员号(外键)
DEGREENO
CHAR(15)
NOT NULL
学位证书编号(主键)
XL
CHAR(6)
NULL
学历
MAJOR
VARCHAR(10)
NULL
专业
BYDATE
DATE
NULL
毕业时间
BYSCHOOL
VARCHAR(20)
NULL
毕业院校
表六CHECKIN考勤表
列名
数据类型及长度
可否为空
说明
ENO
CHAR(6)
NOT NULL
职员号(外键)
ENAME
VARCHAR(10)
NULL
职员姓名
EDATE
DATE
NULL
日期
EDAYS
CHAR(3)
NULL
本月天数
ERDAY
CHAR(3)
NULL
公休假天数
ETDAY
CHAR(3)
NULL
应出勤天数
ELEAVE
CHAR(3)
NULL
请假
EOVER1
CHAR(3)
NULL
节假日加班
EOVER2
CHAR(3)
NULL
其它加班
表七PAYS工资表
列名
数据类型及长度
可否为空
说明
ENO
CHAR(6)
NOT NULL
职员号(外键)
ENAME
VARCHAR(10)
NULL
职员姓名
LEASTPAYS
INT
NOT NULL
底薪
BUTIE
INT
NULL
补助
PRIZE
INT
NULL
奖金
DOUBLINGPAYS
INT
NULL
加班费
DKANNUITY
INT
NULL
代扣养老金
DKYLINSURANCE
INT
NULL
代扣医疗保险
DKZFGJJ
INT
NULL
代扣住房公积金
INCOMETAX
INT
NULL
所得税
FACTPAYS
INT
NULL
实发工资
五、数据库源码
5.1建立数据库MM(men_management system人事管理系统)
create database mm
on
(name=mmdat,
filename='E:\Study\SQL\mydata\mmdat.mdf',
size=100,
maxsize=300,
filegrowth=10)
log on
(name=mmlog,
filename='E:\Study\SQL\mydata\mmdat.ldf',
size=50,
maxsize=150,
filegrowth=10%)
5.2建立了数据库各基础表及各表主、外键设置
建立EMPLOYEE职员表:
use mm
go
create table employee
(eno char(6) not null primary key,--职员号
ename varchar(10),--职员姓名
egender varchar(2),--性别
ebirthday datetime,--出生日期
ehometown varchar(8),--籍贯
enation varchar(10),--民族
eid char(2),--身份证号
ehealth varchar(20),--健康情况
ezzmm char(4),--政治面貌
eblood varchar(2),--血型
ehomeadress varchar(10),--家庭住址
etelend char(10))--联络电话
1. 建立DEPARTMENT部门表
use mm
go
create table department
(eno char(6) not null,--职员号
dno char(6) not null primary key,--部门号
dname varchar(10),--部门名称
dadd varchar(20),--部门地址
dtime datetime,--参与工作时间
foreign key(eno)references employee(eno))
2. 建立FUNCTION职称表
use mm
go
create table [function]
(fno char(6) primary key,--职称号
fname varchar(10),--职称名称
eno char(6),--职员号
foreign key(eno) references employee(eno))
3. 建立MARRIAGE婚姻表
use mm
go
create table marriage
(eno char(6) not null,--职员号
lno char(6) not null primary key,--爱人代号
lname varchar(10),--爱人姓名
lhometown varchar(8),--爱人籍贯
lnatiom varchar(10),--爱人民族
lbirthday datetime,--出生日期
marriagedate datetime,--结婚时间
lcompany varchar(20),--工作单位
lzzmm varchar(4),--政治面貌
ljob varchar(10),--工作职称
foreign key(eno) references employee(eno))
4. 建立SCHOOL学历表
use mm
go
create table school
(eno char(6),--职员号
degreeno char(15) primary key,--学位证书编号
xl char(6),--学历
majob varchar(10),--专业
bydate datetime,--毕业时间
byschool varchar(20),--毕业院校
foreign key(eno) references employee(eno))
5. 建立CHECKIN考勤表
use mm
go
create table checkin
( eno char(6) not null,--职员号
ename varchar(10),--职员名称
edate datetime,--日期
edays char(3),--本月天数
erday char(3),--公休假天数
etday char(3),--应出勤天数
eleave char(3),--请假
eover1 char(3),--节假日加班
eover2 char(3),--其它加班
foreign key(eno) references employee(eno))
6. 建立PAYS工资表
use mm
go
create table pays
( eno char(6) not null,--职员号
ename varchar(10),--职员姓名
leastpays int not null,--底薪
butie int,--补助
prize int,--奖金
doublingpays int,--加班费
dkannuity int,--代扣养老金
dkulinsurance int,--代扣医疗保险
dkzfgjj int,--代扣住房公积金
incometax int,--所得税
factpays int,--实发工资
foreign key(eno) references employee(eno))
5.3对各表完整性等进行设置
对employee表中egender列进行核查约束:
alter table employee
add check(egender='男' or egender='女' )
对pays表中leastpays列进行默认值设置:
create default def_leastpays
as '800'
go
sp_bindefault 'def_leastpays', 'pays.leastpays'
对employee表中enation列进行默认值设置
create default def_enation
as '汉'
go
sp_bindefault 'def_enation','employee.enation'
对pays表中factpays进行索引设置:
use mm
go
create unique clustered index factpays_ind on pays(factpays)
在employee和pays表上建立视图:
create view empay_view
as
select employee.eno ,employee.ename,pays.factpays
from employee,pays
where employee.eno=pays.eno
建立存放过程
use mm
go
if exists (select name from sysobjects
where name='worker' and type ='p')
drop procedure worker
go
create procedure worker
as
select j.eno,j.ename,x.dno,x.dname,y.fno,y.fname
from department as x join employee as j on j.eno=x.eno join [function] as y on x.eno=y.eno
建立触发器
create trigger tr_ehealth_update on employee
for update
as
if update(ehealth)
print'数据已更新'
else
print'数据没有更新'
六、运行平台
SQL SERVER 个人版
Windows xp 操作系统
Transact_SQL 语言
具体操作以下:
首优异入SQL Server ,打开服务管理器,然后进入企业管理器,查询分析器,弹出一窗口,然后输入Transact-SQL语句,实施即可!
七、总结
这次数据库课程设计经历了从选题、目录、摘要、序言、系统设计、需求分析到E-R图设计,再到关系模型设计,最终建立数据库。在这其中我们组每个组员经过查阅相关书籍,分工合作,进行了很数次大大小小扩充和修改,使数据库结构和内容更趋于完善。
经过这次课程设计,我收益颇丰,感受深刻。即使我们这次做设计可能不够好,不过为我对以后数据库设计打下了很好基础。在做这次课程设计过程中,我们每个人全部很努力,即使当中我们有过争吵和喧华,不过最终我们达成了共识而且顺利地完成了此次工作。
展开阅读全文