资源描述
《数据库原理》课程设计
题 目:
考勤管理系统
系 部:计算机和信息科学学院
学生姓名:罗 学 智
指导老师:陈 利 平
专 业:软件工程
班 级:软件1201
完成时间:.5.20
目录
1 概述 1
1.1设计背景 1
1.2研究目标 1
1.3理论基础分析 2
1.4预期结果和意义 2
2 需求分析 2
2.1功效需求 2
2.2数据流图 3
2.3功效模块图 4
2.4系统数据步骤图 4
3 概念结构设计 5
3.1 局部E-R图 5
3.2 整体E-R图 8
4 逻辑结构设计 9
4.1 关系模式 9
4.2数据关系图 9
5 物理结构设计 10
5.1存放统计结构设计 10
5.2创建索引 12
6 数据库实施 13
6.1建立数据库 13
6.2数据表创建 13
6.3建立存放过程 16
6.4创建触发器 17
7文件........................................................................................................................................19
8结论........................................................................................................................................22
1 概述
1.1设计背景
伴随企业人事管理日趋复杂和企业人员增多,企业考勤管理变得越来越复杂。规范考勤管理是现代企业提升管理效益关键确保,而传统人工管理存在着效率低、不易统计、成本高和易犯错等弊端,已经无法适应该代企业需求。伴随计算机技术和通信技术快速发展,将传统人工考勤管理计算机化,建立一个高效率、无差错考勤管理系统,能够有效帮助企业实现“公正考勤,高效薪资”,使企业管理水平登上一个新台阶。
企业考勤管理经过以下业务步骤:
(1)职员基础信息管理,添加,删除,更改
(2)职员考勤管理,职员依据自己班次在上下班时分别进行出勤操作,采取手动方法或使用划卡机。由人事部门专门人员管理出勤和退勤信息。
(3)通常在每个月月初进行考勤汇总,汇总信息包含工作日出勤情况、请假天数、出差天数、休假天数和不一样性质加班统计等。
1.2研究目标
待开发系统名称为企业职员在线考勤系统;
我们以中小型企业考勤管理业务为依靠,结合科学管理理论,设计并开发一个企业考勤管理信息系统,提供一个科学合理考勤管了处理方案,根本实现无纸化作业。依据管理权限不一样,将界面分为通常职员、部门经理、系统管理员和最高管理者四个层次,系统目标以下:
(1)提供简单、方便操作。
(2)依据企业原来考勤管理制度,为企业不一样管理层次提供对应功效。
(3)经过考勤管理无纸化实现,使企业考勤管理愈加科学规范。
(4)节省考勤管理成本。
(5)提升企业考勤管理透明度和效率,预防“虚假出勤“现象。
(6)对系统提供必需权限管理。
(7)为企业实现整体信息化其它相关系统提供必需数据支持。
1.3理论基础分析
本设计利用sql server 建立数据库,表格化存放,利用表查询,连接,修改,删除数据等管理职员信息,对数据库设定必需权限,只有含有权限人才能进行查看,修改数据。
1.4预期结果和意义
考勤系统能实现职员日考勤统计,统计请假信息,统计出差信息等功效,并最终全部信息归入月统计中去。
本考勤系统建立了一个高效率、无差错考勤管理系统,能够有效帮助企业实现“公正考勤,高效薪资”,使企业管理水平登上一个新台阶。
2 需求分析
2.1功效需求
(1) 数据管理
功效是设置和管理基础数据,包含加班、请假类别定义和班次定义,在全县范围内能够进行基础数据添加、删除和修改。
(2) 考勤管理
包含出勤动作、出勤信息查询;上级对下级职员出勤信息确实定;生成考勤统计信息并能够依据指定条件进行查询。实现从每日出勤到统计全部考勤信息无纸化操作。为方便数据传输和查阅,要依据需求提供不一样时间短考勤统计信息表。
(3) 加班管理
对职员加班时间进行统计,统计开始时间和结束时间,对加班信息实现添加,删除等操作。
(4) 请假管理
能够提出请假申请,并完善请假信息,如请假开始时间,请假结束时间,请假次数进行管理。
(5) 出差管理
管理者安排职员出差,对出差时间,次数管理。
2.2数据流图
数据流图 图2.1所表示
加班
请假
请假信息
职员
加班信息
N
N
M M
出差统计
出差
统计
M
M N
N M
出勤
月统计
出勤统计
N
2.1 数据流图
2.3功效模块图
图2.2所表示,图为功效模块图
职员考勤管理信息系统
职员基础信息
出
差
记
录
出勤统计
请假统计
月
统计
加班统计
2.2 功效模块图
2.4系统数据步骤图
图2.3所表示,图为数据步骤图
多种统计信息
管理人员
考勤员
职员
经理审批
月度职员考勤统计
请假、值班、出差统计
上下班时间安排
职员出勤统计
统计出勤时间
2.3 数据步骤图
3 概念结构设计
3.1 局部E-R图
(1)职员E-R图,图3.1.1所表示
年纪
姓名
编号
性别
职员
图3.1 职员E-R图
(2)图2.3.2 为出勤E-R图
年纪
职员编号
下班时间
缺勤统计
上班时间
出勤统计
图3.2 出勤E-R图
(3)图3.3为出差E-R图
出差编号
职员编号
结束时间
缺勤统计
开始时间
出差统计
图3.3出差E-R图
(4)加班E-R图图3.4所表示
加班编号
职员编号
加班统计
开始时间
出勤统计
结束时间
3.4 加班E-R图
(5)请假E-R图图3.5所表示
请假编号
编号
结束时间
请假统计
开始时间
请假统计
3.5 请假E-R图
(6)月统计E-R图
职员编号
下班时间
缺勤统计
上班时间
出勤统计
3.6 月统计E-R图
3.2 整体E-R图
图3.7所表示,图为整体E-R图
结束时间
3.7 整体E-R图
4 逻辑结构设计
4.1 关系模式
职员(职员编号,姓名,性别,年纪)
出勤统计(职员编号,出勤编号,上班时间,下班时间,缺勤统计)
出差统计(职员编号,出差编号,开始时间,结束时间,统计天数)
加班信息(职员编号,加班编号,加班开始时间,加班结束时间,加班时间统计)
请假信息(职员编号,请假编号,请假开始时间,请假结束时间,请假时间统计)
月统计(职员编号,出勤月统计,出差月统计,加班月统计,请假月统计)
4.2数据关系图
图4.2.1所表示,在数据库中生成关系图中,职员编号是职员信息表主键,是其它表外键。
图4.1 数据关系图
5 物理结构设计
5.1存放统计结构设计
在物理结构中,数据基础存取单位是存放统计。有了逻辑结构以后,就能够设计存放统计结构,一个存放统计能够和多个逻辑统计相对应。存放统计就包含统计组成,数据项类型和长度等。
在本图中5.1职员信息表关键包含职员编号,姓名,性别,年纪
表5.1 职员信息表
列名
说明
字段类型
约束控制
w_id
职员编号
Char(4)
主键
w_name
姓名
Char(6)
非空
w_sex
性别
Char(2)
‘男’或’女’
w_age
年纪
Int
非空
w_degree
职称
char(4)
非空
在本表5.2中出勤统计包含职员编号,出勤编号,上班时间,下班时间,缺勤统计
表5.2 出勤统计表
列名
说明
字段类型
约束控制
w_id
职员编号
Char(4)
主键
w_num
出勤编号
Int
主键
work_tim
上班时间
Datetime
许可空
end_tim
下班时间
Datetime
许可空
Work_note
缺勤统计
Datetime
许可空
在本图5.3中出差统计职员编号,出差编号,开始时间,结束时间,统计天数
表5.3 出差统计表
列名
说明
字段类型
约束控制
w_id
职员编号
Char(4)
主键
Out_num
出差编号
Int
主键
Out_tim
开始时间
Datetime
许可空
Back_tim
结束时间
Datetime
许可空
Out_days
统计天数
Int
许可空
在本表5.4中加班统计表关键包含职员编号,加班编号,开始时间、结束时间。时间统计
表5.4 加班统计表
列名
说明
字段类型
约束控制
w_id
职员编号
Char(4)
主键
Over_num
加班编号
Int
主键
Over_tim
开始时间
Datetime
许可空
Overend_tim
结束时间
Datetime
许可空
Over_days
时间统计
Int
许可空
在本表5.5中,请假统计表关键包含职员编号,请假编号,请假开始时间和请假结束时间组成。
表5.5 请假统计表
列名
说明
字段类型
约束控制
w_id
职员编号
Char(4)
主键
Off_num
请假编号
Int
主键
Off_tim
请假开始时间
Datetime
许可空
Offend_tim
请假结束时间
Datetime
许可空
Off_days
统计天数
Int
许可空
在本图5.6中月统计关键包含职员编号,出勤月统计,出差月统计,请假月统计,加班月统计
表5.6 月统计统计表
列名
说明
字段类型
约束控制
w_id
职员编号
Char(4)
主键
Work_note
出勤月统计
Int
非空
Out_note
出差月统计
Int
许可空
Over_note
加班月统计
Int
许可空
Off_note
请假月统计
Int
许可空
5.2创建索引
为mounth_note在w_id上创建唯一索引
Create index M1 on mounth_note(w_id)
Go
Exec sp_helpIndex mounth_note
6 数据库实施
6.1建立数据库
CREATE DATABASE worker
ON
( NAME=worker_data,
FILENAME='f:\worker.mdf',
SIZE=3,
FILEGROWTH=1
)
LOG ON
( NAME=worker_LOG,
FILENAME='C:\worker_log.ldf',
SIZE=1,
MAXSIZE=50,
FILEGROWTH=10%
)
6.2数据表创建
(1)图6.1所表示 职员信息表(worker)
CREATE TABLE worker
( W_id CHAR(4) CONSTRAINT worker_Prim PRIMARY KEY,
w_name CHAR(6) not null,
SEX CHAR(2) CONSTRAINT SEX_Chk CHECK(SEX='男'OR SEX='女') not null,
AGE INT not null,
w_drgee VARCHAR(4) NOT NULL,
)
图6.1 职员信息表
(2)图6.2所表示 出勤统计表(work_note)
CREATE TABLE work_note
( W_id CHAR(4),
w_num int ,
CONSTRAINT work_note_Prim PRIMARY KEY(W_id,w_num),
work_tim datetime,
end_tim datetime,
work_note datetime,
)
图6.2 出勤统计
(3)图6.3所表示 出差统计表(out_note)
CREATE TABLE out_note
( W_id CHAR(4),
out_num int ,
CONSTRAINT out_note_Prim PRIMARY KEY(W_id,out_num),
out_tim datetime,
back_tim datetime,
out_days int,
)
图6.3 出差统计
(4)图 6.4所表示 加班统计表(over_note)
CREATE TABLE over_note
( W_id CHAR(4),
over_num int ,
CONSTRAINT over_note_Prim PRIMARY KEY(W_id,over_num),
over_tim datetime,
overend_tim datetime,
over_days int,
)
图6.4 加班统计
(5)图6.2.5所表示 请假统计表(off_note)
CREATE TABLE off_note
( W_id CHAR(4),
off_num int ,
CONSTRAINT off_note_Prim PRIMARY KEY(W_id,off_num),
off_tim datetime,
offend_tim datetime,
off_days int,
)
图 6.5 请假统计
(6)图6.6所表示 月纪录表(mounth)
CREATE TABLE mounth_note
( w_id CHAR(6) CONSTRAINT mounth_Prim PRIMARY KEY,
work_note int not null,
out_note int,
over_note int,
off_note int,
)
图6.6 月统计统计表
6.3建立存放过程
图6.7所表示 建立一个向职员出勤表中插入数据存放过程
CREATE PROCEDURE insert_in
(
@W_id CHAR(4),
@w_num int ,
@work_tim datetime ,
@end_tim datetime ,
@work_note datetime
)
AS
insert into work_note
values(@W_id, @w_num, @work_tim ,@end_tim ,@work_note )
go
execinsert_in@W_id='0001',@w_num=1,@work_tim='/11/1' ,@end_tim='/11/1' ,@work_note=null
go
select *
from work_note
图6.7 运行结果
6.4创建触发器
(1)建立一个触发器,当想考勤统计中添加一条新考勤统计时,触发统计该职员30天考勤统计,并存入月统计月考勤统计表中。请假统计,出差统计,加班统计分别建立这类触发器。
CREATE TRIGGER mounth_insert
ON work_note
FOR insert
AS
begin
if update(w_id)
update mounth_note
set work_note=(select count(work_tim)
from work_note
where w_id =(SELECT W_id FROM inserted)
group by w_id
)
where w_id = (SELECT W_id FROM inserted)
end
(2)创建一个触发器,当删除职员基础信息时,同事也删除其它表中职员信息。
如当删除worker表中信息是,也删除职员考勤统计表中内容,请假统计,出差统计,加班统计分别建立这类触发器。
create trigger delete_data
on worker
for delete
as
delete
from work_note
where w_id=(select w_id from deleted)
参考文件
1 专著著录格式
[1]孙家广,杨长青.计算机图形学[M].北京:清华大学出版社,1995.26~28
Sun Jiaguang, Yang Changqing. Computer graphics[M].Beijing: Tsinghua University Press,1995.26~28(in Chinese)
[2]Skolink M I. Radar handbook[M]. New York: McGraw-Hill, 1990
2 期刊著录格式
[3]李旭东,宗光华,毕树生,等.生物工程微操作机器人视觉系统研究[J].北京航空航天大学学报,,28(3):249~252
Li Xudong, Zong Guanghua, Bi Shusheng, et al. Research on global vision system for bioengineering-oriented micromanipulation robot system[J]. Journal of Beijing University of Aeronautics and Astronautics, ,28(3):249~252(in Chinese)
3论文集著录格式
[4]张佐光,张晓宏,仲伟虹,等.多相混杂纤维复合材料拉伸行为分析[A].见:张为民编.第九届全国复合材料学术会议论文集(下册)[C].北京:世界图书出版企业,1996.410~416
[5]Odoni A R. The flow management problem in air traffic control[A]. In: Odoni A R, Szego G,eds. Flow Control of Congested Networks[C]. Berlin: Springer-Verlag,1987.269~298
4 学位论文著录格式
[6]金 宏.导航系统精度及容错性能研究[D].北京:北京航空航天大学自动控制系,1998
5 科技汇报著录格式
[7]Kyungmoon Nho. Automatic landing system design using fuzzy logic[R].AIAA-98-4484,1998
6 国际或国家标准著录格式
[8]GB/T 16159-1996,汉语拼音正词法基础规则[S]
7 专利著录格式
[9]姜锡洲.一个温热外敷药制备方案[P].中国专利:,1989-07-06
8 电子文件著录格式
[10]王明亮.相关中国学术期刊标准化数据系统工程进展[EB/OL]. ,1998-08-16/1998-10-04
8 结论
本系统在信息表述上还不完备,部分模块信息还不够具体,关键是提供报表有限。系统即使针对中小企业考勤管理业务。对使用打卡机、指纹机进行出、退勤企业,还需要添加一个采集打卡机和指纹机数据模块。下一步能够再熟悉系统设计风格基础上,在各个界面上深入添加多需要字段和报表,或添加采集数据模块,以扩充系统功效。本系统创新点在于触发器应用,每增加一条统计,全部会重新统计一下统计次数,并存入月纪录中,使得信息愈加正确。 在设计时因为对编程语言知识匮乏,所以数据库界面化没有做成,如若想愈加完善数据库,应该结合部分编程语言,使得操作界面愈加人性化,简单化。
经过此次设计,我对数据库有了更深入了解,见证了一个系统从无到有,从漏洞百出到逐步完善过称,是我所学只是得以所用,加深了对数据库了解,在设计过程中有很多不会问题,经过自己查阅资料逐步处理,这本身就是一个学习过程,不仅学到了只是,还掌握了学习方法。同时让我认识到自己所学知识匮乏,所以要全方面发展自己专业,一个人能力总是有限,所以团体合作很关键,在做设计过程中要学习她人之长,听取她人意见,虚心向她人请教。相互配合做好自己工作,才能成为一名合格网路工程师。即使自己做设计还不是很完善,但我认为很有意义,对我和我以后人生全部很有帮助。
展开阅读全文