工资管理系统.docx
- 文档编号:6511488
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:14
- 大小:220.51KB
工资管理系统.docx
《工资管理系统.docx》由会员分享,可在线阅读,更多相关《工资管理系统.docx(14页珍藏版)》请在冰豆网上搜索。
工资管理系统
东方学院
实验(实训)报告
项目名称工资管理系统数据库分析与设计
所属课程名称数据库原理及应用
项目类型设计、综合型
实验(实训)日期2014.5—2014.6
班级12信息2班,金融信息
学号******************************
122040012212204001251220400127
12204001391220400143
姓名黄德灿方骏涛林津津郑逸群
孙鲁霖张笑戴林洁,陈怡文
一、需求分析
1.信息要求
工资管理是一项琐碎、复杂而又十分细致的工作,一般不允许发生差错。
手工进行工资发放工作,需要反复地进行抄写、计算,不仅花费财务人员大量的时间,而且往往由于抄写不慎,出现张冠李戴,或者由于计算机的疏忽,出现工资发放错误的现象。
同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。
正是工资管理的这种重复性、规律性、时间性,使得工资管理计算机化成为可能。
计算机进行工资发放工作,不仅能够保证工资核算正确无误、快速输出,而且还可以利用工资数据库对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理。
本例按照一般企业都采用的工资计算公式,即根据员工的职务工种来确定基本工资,根据出工情况来扣除缺勤费,根据加班情况发放津贴来生成一个员工的当月工资。
2.功能要求
1、员工档案
1)对员工进行统一编号,将每一位员工的部门信息、职称信息等保存在员工档案记录中。
2)对新聘用的员工,将其信息加入到员工档案记录中;对于解聘的员工,将其信息从员工档案记录中删除。
3)当员工的信息发生变动时,修改员工档案记录中相应的属性。
2、员工考勤管理
1)登记员工本月因迟到、早退、旷工扣减的工资
3、员工加班管理
1)登记员工本月加班获得的加班薪酬
4、员工工资计算及管理
1)根据各员工加入公司时间不同,定时对员工工资进行计算。
2)结合员工基本工资,扣除工资及加班情况,对工资进行结算。
5、管理
1)员工可以登录系统查询自己的扣除工资、加班情况、本月工资及工资发放时间,也可以更改自己的登录密码。
2)管理员可以查询和管理所有信息,可以更改自己的登录密码。
3.安全性与完整性要求
安全与保密要求:
此系统可以分为用户和管理员,用户可以浏览自己的考勤加班情况、月工资金额及发放时间,但不能修改自己的信息,凡要修改都需通过管理员去修改。
管理员主要管理系统的各种信息。
二、数据库结构设计
1.概念结构设计
根据系统需求分析,可以得出工资管理系统数据库的概念模型(信息模型),用E-R图表示的工资管理系统的概念模型。
最后,对设计出的数据模型进行规范化处理,使数据模型满足第三范式。
6、
员工实体图
图1.员工实体图
7、管理员实体图
图2.管理员实体图
8、部门实体图
图3.部门实体图
9、
职称实体图
图4.职称实体图
10、加班记录实体图
图5.加班实体图
11、
考勤记录实体图
图6考勤实体图
12、工资记录实体图
图7.工资实体图
全E-R图:
图8.实体联系图
2.逻辑结构设计
将管理系统的E-R图转换为关系数据库的数据模型,其关系模式为:
1)员工(员工编号,姓名,年龄,性别,所在部门编号,职称编号,加入公司时间,发薪时间,登录密码)员工编号为主码,所在部门编号、职称编号为外码
2)管理员(管理员编号,姓名,密码)管理员为主码
3)部门(部门编号,部门名称,经理人姓名)部门编号为主码
4)职称(职称编号,职称名,基本工资)职称编号为主码
5)加班记录(员工编号,年份,月份,加班薪酬)员工编号为主码,加班时长、加班薪酬为外码
6)考勤扣除工资(员工编号,年份,月份,扣除工资)员工编号、考勤日期为主码,考勤类型、扣除工资为外码
7)工资记录(员工编号,基本工资,扣除工资,加班薪酬,总工资,年份,年月)工资编号为主码,员工编号、发薪日期为外码。
几范式?
3.数据库结构的详细设计
员工表
列名
数据类型
描述
备注
ygid
Char(8)
员工编号
主键
ygname
Varchar(20)
姓名
不为空
ygage
Int
年龄
ygsex
Char
(2)
性别
“男”或“女”
bmid
Char(3)
所在部门编号
不为空,外码
zcid
Char(3)
职称编号
不为空,外码
jrdate
date
加入公司时间
不为空
fxdate
date
发薪日期
不为空
ygmm
Char(20)
登录密码
不为空
管理员
列名
数据类型
描述
备注
glyid
Char(8)
管理员编号
主键
glyname
Varchar(20)
管理员名
不为空
mm
Char(20)
密码
不为空
部门表
列名
数据类型
描述
备注
bmid
Char(3)
部门编号
主键
bmname
Varchar(20)
部门名称
不为空
ygname
Varchar(20)
经理人姓名
不为空
职称表
列名
数据类型
描述
备注
zcid
Char(3)
职称编号
主键
zcname
Varchar(20)
职称名
不为空
zcjbgz
money
基本工资
不为空
加班记录
列名
数据类型
描述
备注
ygid
Char(8)
员工编号
主键
jbyear
int
加班年份
主键
jbmonth
int
加班月份
主键
jbxc
money
加班薪酬
考勤扣除工资
列名
数据类型
描述
备注
ygid
Char(8)
员工编号
主键
kqdate
int
考勤年月
主键
kqmonth
int
考勤月份
主键
kcgz
money
扣除工资
工资记录
列名
数据类型
描述
备注
ygid
Char(8)
员工编号
主码
zcjbgz
money
基本工资
不为空,外码
kcgz
money
扣除工资
jbxc
money
加班薪酬
zgz
money
总工资
不为空
year
int
年份
主码
month
int
月份
主码
三、物理设计
1.数据库物理设计原理
对员工表在属性列ygid(员工编号)上建立索引,
对部门表在属性列bmname(部门名称)和ygname(经理人姓名)上建立索引,
对职称表在属性列zcname(职称名)上建立索引,
对加班记录在属性列ygid(员工编号)和jbyear(加班年份)和jbmonth(加班月份)上建立索引,
对考勤扣除工资在属性列ygid(员工编号)和kqyear(考勤年份)和kqmonth(考勤月份)上建立索引,
对工资表在属性列ygid(员工编号)上建立索引,
2.数据库的建立
2.1表的简历
createtable员工表
(ygidchar(8)primarykey,
ygnamevarchar(20)notnull,
ygageint,
ygsexchar
(2)check(ygsexin('男','女')),
bmidchar(3)notnull,
zcidchar(3)notnull,
jrdatedatenotnull,
fxdatedatenotnull,
ygmmchar(20)notnull,
foreignkey(bmid)references部门表(bmid),
foreignkey(zcid)references职称表(zcid),
)
createtable管理员
(glyidchar(8)primarykey,----------管理员编号
glynamevarchar(20)notnull,-----------管理员姓名
mmchar(20)notnull,----------密码
)
createtable部门表
(bmidchar(3)primarykey,
bmnamevarchar(20)notnull,
ygnamechar(20)notnull,
)
createtable职称表
(zcidchar(3)primarykey,
zcnamevarchar(20)notnull,
zcjbgzmoneynotnull,
)
createtable加班记录
(ygidchar(8),----------员工编号
jbyearint,----------加班年份
jbmonthint,----------加班月份
jbxcmoney,----------加班薪酬
foreignkey(ygid)references员工表(ygid),
primarykey(ygid,jbyear,jbmonth)
)
createtable考勤扣除工资
(ygidchar(8),
kqyearint,
kqmonthint,
kcgzmoney,
foreignkey(ygid)references员工表(ygid),
primarykey(ygid,kqyear,kqmonth),
)
createtable工资记录
(
ygidchar(8),
zcjbgzmoneynotnull,
kcgzmoney,
jbxcmoney,
zgzmoneynotnull,
yearint,
monthint,
foreignkey(ygid)references员工表(ygid),
primarykey(ygid,year,month),
)
2.2索引
createindex员工_索引on员工表(ygid);
createindex部门_索引on部门表(bmname,ygname);
createindex职称_索引on职称表(zcname);
createindex加班记录_索引on加班记录(ygid,jbyear,jbmonth);
createindex扣资_索引on考勤扣除工资(ygid,kqyear,kqmonth);
createindex工资_索引on工资记录(ygid);
2.3触发器
1)考勤扣除工资表中增加一条本月员工扣除资金,则工资记录中扣除工资相应改变
createtrigger工资记录_kcgz
on考勤扣除工资
afterinsert
as
update工资记录
setkcgz=inserted.kcgz
from工资记录,inserted
where
工资记录.ygid=inserted.ygid
and工资记录.year=inserted.kqyear
and工资记录.month=inserted.kqmonth
2)加班记录表中增加一条本月员工加班薪酬,则工资记录中加班薪酬相应改变
createtrigger工资记录_jbxc
on加班记录
afterinsert
as
update工资记录
setjbxc=inserted.jbxc
from工资记录,inserted
where
工资记录.ygid=inserted.ygid
and工资记录.year=inserted.jbyear
and工资记录.month=inserted.jbmonth
3)当工资记录中更新本月员工加班薪酬或扣除工资,则工资记录中总工资相应改变
createtrigger工资记录_zgz
on工资记录
afterupdate
as
if(UPDATE(kcgz)orUPDATE(jbxc))
begin
update工资记录
setzgz=zcjbgz+jbxc-kcgz
from工资记录
end
3.数据库的运行和维护
3.1运行需求
13、硬件接口
1)服务器端:
P
400主频、256M内存、10G硬盘、10/100M网卡以上配置
2)客户端:
P166主频、32M内存、2G硬盘、10/100M网卡以上配置
3)一台路由器
4)远程拨入设备
14、软件接口
1)MicroSoftWindowsNTServer4.0/Windows2003/Windowsxp/Windows2007
2)SQLserver2005数据库
3)MicroSoftOffice2000/2003/2007
15、系统维护
设备的硬件故障可能造成本软件不能运行或不能正常进行输入、输出等后果,系统的资源不足及网络传输通道阻塞可能造成本软件不能正常运行,并有可能造成机器“死机”,上述故障的处理由用户自行解决。
软件在运行过程中产生的数据库错误,将由系统自动记入错误日志,非数据传输引起的错误将由系统管理员或软件开发者解决。
软件在运行过程中产生的其他错误,将根据情况由软件开发者或软件开发者协助系统管理员解决。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工资管理 系统