数据库课程设计职工考勤管理信息系统3721878Word下载.docx
《数据库课程设计职工考勤管理信息系统3721878Word下载.docx》由会员分享,可在线阅读,更多相关《数据库课程设计职工考勤管理信息系统3721878Word下载.docx(24页珍藏版)》请在冰豆网上搜索。
1.3理论基础的分析
本设计利用sqlserver2005建立数据库,表格化存储,利用表的查询,连接,修改,删除数据等管理员工信息,对数据库设定必要的权限,只有具有权限的人才能进行查看,修改数据。
1.4预期结果和意义
考勤系统能实现职工日考勤记录,记录请假信息,记录出差信息等功能,并最终所有信息归入月统计中去。
本考勤系统建立了一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。
2需求分析
2.1功能需求
(1)数据管理
功能是设置和管理基础数据,包括加班、请假类别的定义和班次的定义,在全县范围内可以进行基础数据的添加、删除和修改。
(2)考勤管理
包括出勤动作、出勤信息的查询;
上级对下级员工的出勤信息的确认;
生成考勤统计信息并可以根据指定的条件进行查询。
实现从每日出勤到统计全部考勤信息的无纸化操作。
为方便数据传递和查阅,要根据需求提供不同时间短的考勤统计信息表。
(3)加班管理
对员工的加班时间进行统计,记录开始时间和结束时间,对加班信息实现添加,删除等操作。
(4)请假管理
可以提出请假申请,并完善请假信息,如请假开始时间,请假结束时间,请假的次数进行管理。
(5)出差管理
管理者安排员工出差,对出差时间,次数的管理。
2.2数据流图
数据流图如图2.1所示
N
MM
M
MN
NM
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_num
出勤编号
work_tim
上班时间
Datetime
允许空
end_tim
下班时间
Work_note
缺勤记录
在本图5.3中出差记录职工编号,出差编号,开始时间,结束时间,统计天数
表5.3出差记录表
Out_num
出差编号
Out_tim
开始时间
Back_tim
结束时间
Out_days
统计天数
在本表5.4中加班记录表主要包含职工编号,加班编号,开始时间、结束时间。
时间统计
表5.4加班记录表
Over_num
加班编号
Over_tim
Overend_tim
Over_days
在本表5.5中,请假记录表主要包括职工编号,请假编号,请假开始时间和请假结束时间组成。
表5.5请假记录表
Off_num
请假编号
Off_tim
请假开始时间
Offend_tim
请假结束时间
Off_days
在本图5.6中月统计主要包括职工编号,出勤月统计,出差月统计,请假月统计,加班月统计
表5.6月统计记录表
出勤月统计
Out_note
出差月统计
Over_note
加班月统计
Off_note
请假月统计
5.2创建索引
为mounth_note在w_id上创建唯一索引
CreateindexM1onmounth_note(w_id)
Go
Execsp_helpIndexmounth_note
6数据库实施
6.1建立数据库
CREATEDATABASEworker
ON
(NAME=worker_data,
FILENAME='
f:
\worker.mdf'
SIZE=3,
FILEGROWTH=1
)
LOGON
(NAME=worker_LOG,
C:
\worker_log.ldf'
SIZE=1,
MAXSIZE=50,
FILEGROWTH=10%
)
6.2数据表的创建
(1)如图6.1所示员工信息表(worker)
CREATETABLEworker
(W_idCHAR(4)CONSTRAINTworker_PrimPRIMARYKEY,
w_nameCHAR(6)notnull,
SEXCHAR
(2)CONSTRAINTSEX_ChkCHECK(SEX='
男'
ORSEX='
女'
)notnull,
AGEINTnotnull,
w_drgeeVARCHAR(4)NOTNULL,
图6.1员工信息表
(2)如图6.2所示出勤记录表(work_note)
CREATETABLEwork_note
(W_idCHAR(4),
w_numint,
CONSTRAINTwork_note_PrimPRIMARYKEY(W_id,w_num),
work_timdatetime,
end_timdatetime,
work_notedatetime,
图6.2出勤记录
(3)如图6.3所示出差记录表(out_note)
CREATETABLEout_note
out_numint,
CONSTRAINTout_note_PrimPRIMARYKEY(W_id,out_num),
out_timdatetime,
back_timdatetime,
out_daysint,
图6.3出差记录
(4)如图6.4所示加班记录表(over_note)
CREATETABLEover_note
over_numint,
CONSTRAINTover_note_PrimPRIMARYKEY(W_id,over_num),
over_timdatetime,
overend_timdatetime,
over_daysint,
图6.4加班记录
(5)如图6.2.5所示请假记录表(off_note)
CREATETABLEoff_note
off_numint,
CONSTRAINToff_note_PrimPRIMARYKEY(W_id,off_num),
off_timdatetime,
offend_timdatetime,
off_daysint,
图6.5请假记录
(6)如图6.6所示月纪录