职工考勤管理系统设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
职工考勤管理系统设计报告
课程设计报告职工考勤管理系统的设计与实现
课程《数据库原理与应用》
班级软件技术 11 — 1
成员
指导教师
2012-12-20
前言
20世纪90年代,随着我国市场经济的快速发展,职工考勤管理系统在企业的日常管理中发挥着越来越重要的作用。
职工考勤管理系统可以进行员工信息管理、出勤管理和密码管理等,方便处理企业内部员工的相关考勤信息。
此外Internet 的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。
职工考勤系统是在适应市场需求的客观前提下,为了满足中小型公司或事业单位管理自己的员工而开发的。
目录
第一章开发背景 (1)
第二章需求分析 (2)
第三章概念结构设计 (3)
一、局部E-R图设计 (3)
(一)、确定局部范围 (5)
(二)、确定实体与属性 (5)
二、合并成总体E-R图 (8)
第四章逻辑结构设计 (8)
一、E-R图转换为关系模型 (8)
第五章物理结构设计 (11)
第六章数据库实施与维护错误!未定义书签。
第七章参考文献 (17)
第一章开发背景
我们都知道,考勤管理系统是任何一个营业单位不可缺少的部分,它的内容对于单位的管理者和内部员工来说都至关重要,所以考勤管理系统应该能够为用户提供充足的信息和快捷的安全查询,及实时管理手段。
但在过去,人们一直在使用传统的人工的方式来进行考勤管理,这种落后的方式存在着许多缺点,如:效率低,保密性差,另外时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难。
而使用计算机对员工出勤进行管理,具有手工作业所无法比拟的优点。
例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高管理的效率。
此次开发了一种基于SQL Server和Java下的考勤管理系统。
其不但具有实际考勤管理系统应有的档案管理,信息安全认证等功能,且拥有用户使用更简单、界面更直观等优点。
考勤管理系统在我国任何一个单位是必需的,随着我国的发展,考勤管理系统的作用会得到更加充分的体现。
第二章需求分析
职工考勤管理系统,可用于企业等机构的职工考勤情况管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。
该软件用Java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成职工基本信息的添加,查询,修改,删除的操作以及成绩的录入,修改,删除等。
用ODBC驱动实现前台Java 与后台SQL数据库的连接。
Java语言跨平台性强,可以在windows,Linux,等系统下使用,方便简单,安全性好。
SQLServer2005数据库高效安全,两者结合可相互利用各自的优势
λ用户登陆界面。
该界面可以选择使用者的身份,“管理员,职工”。
不同的身份有不同的操作界面和功能权限。
账号和密码输入正确即可登录。
职工管理界面。
提供了职工基本信息的查询,相关人员的考勤查询和出差加班情况等。
λ管理员管理界面。
提供了对所有职工信息的查询、添加、修改、删除;职工考勤信息的录入、修改、删除、查询,修改密码等功能。
管理员管理界面。
拥有最高的权限。
允许对职工所有信息进行查询和修改。
第三章概念结构设计
一、局部E-R图设计
表示实体表示属性表示关系
管理员信息表ER图
用户信息表ER图
职工信息表ER图
职工出勤信息表ER图职工加班信息表ER图职工出差信息表ER图请假信息表ER图
(一)、确定局部范围
职工考勤管理系统分为七部分:
●管理员登录
●职工登录
●职工基本信息
●职工出勤信息
●职工加班信息
●职工出差信息
●职工请假信息
(二)、确定实体与属性
两个准则:
(1)属性不能在具有需要描述的性质,即属性
必须是不可分的数据项,不能再由另一些
属性组成.
(2)属性不能与其他实体具有联系,联系只发
生在实体之间
根据两个准则进行分析:
在职工考勤管理系统中,职工具有属性(职工编号、职工姓名、性别、年龄、职称),其属性又是不可分的,因此将职工作为实体。
出勤、加班、出差、请假都具有属性,其属性又是不可分的,因此将他们作为实体。
管理员、用户登录也作为实体。
关系模式的规范化
步骤
非规范关系
是每个属性不能再分
1NF
消去非主属性対主码的部分依赖
2NF
消去非主属性対主码的传递依赖
3NF
二、合并成总体E-R图
消除各局部ER图的冲突问题
各个局部ER图通常不通的人员设计,所以各个局部ER图不可避免的会有很多不一致这称为冲突。
冲突的类型如下
1.属性冲突:取值范围或取值单位不同。
2.命名冲突
(1)同名异义
(2)异名同义
3.结构冲突:同一对象在不同应用中具有不通的应用
第四章逻辑结构设计
一、E-R图转换为关系模型
E-R图转换为关系模型
用户信息表(管理员,员工)
职工信息表(职工编号,职工姓名,性别,年龄,职称)
职工出勤信息表(职工编号,姓名,上班打卡时间,下班打卡时间,缺勤记录)职工加班信息表(职工编号,姓名,加班开始时间,加班结束时间,统计加班天数)
职工出差信息表(职工编号,姓名,出差开始时间,出差结束时间,统计出差天数)
请假信息表(职工编号,姓名,请假开始时间,请假结束时间,统计请假天数)
第五章物理结构设计
第六章数据库实施与维护
--创建职工考勤数据库
CREATE DATABASE zgkq
ON
(name=zg_dat,
filename='d:\zg_dat.mdf',
size=5,
maxsize=20,
Filegrowth=1
)
LOG ON
(name=zg_log,
filename='e:\zg_dat.ldf',
size=5,
maxsize=20,
Filegrowth=1
)
USE zgkq
GO
--管理员登录表
CREATE TABLE login_admin
(admin char(6)PRIMARY KEY,
password char(12)NOT NULL
)
--
INSERT INTO login_admin VALUES('管理员','123456')
--员工登录表
CREATE TABLE login_w
(w_id char(6)PRIMARY KEY,
password_w char(12)NOT NULL
)
--
INSERT INTO login_w VALUES('1001','100001')
INSERT INTO login_w VALUES('1002','100002')
--职工信息职工编号、职工姓名、性别、年龄、职称
--创建职工信息表worker
CREATE TABLE worker
(w_id char(4)PRIMARY KEY,
w_name char(6)NOT NULL,
w_sex char(6)check(w_sex='男'or w_sex='女')NOT NULL,
w_age int NOT NULL,
w_drgee char(4)NOT NULL
)
----
INSERT INTO worker VALUES('1001','李芳','女','28','员工')
INSERT INTO worker VALUES('1002','王明','男','30','员工')
INSERT INTO worker VALUES('1003','江月','女','31','员工')
INSERT INTO worker VALUES('1004','李芳','男','27','员工')
INSERT INTO worker VALUES('1005','李芳','男','24','员工')
--出勤记录信息职工编号上班打卡时间下班打卡时间缺勤记录
--创建出勤记录信息work_note
CREATE TABLE work_note
(w_id char(4)PRIMARY KEY,
s_tim datetime,
x_tim datetime,
q_not int CHECK(q_not=0 OR q_not=1) DEFAULT 0
)
--
INSERT INTO work_note VALUES('1001','2010-5-21
08:00:00','2010-5-21 18:30:00',0)
--出差信息职工编号出差起始时间、结束时间、统计总共天数
--创建出差信息out_note
CREATE TABLE out_note
(w_id char(4)PRIMARY KEY,
k_tim datetime,
j_tim datetime,
c_days int
)
--
INSERT INTO out_note VALUES('1002','2010-3-21','2010-4-21',31)
--请假信息职工编号请假开始时间结
束时间统计请假天数
--创建请假信息off_note
CREATE TABLE off_note
(w_id char(4)PRIMARY KEY,
off_tim datetime,
off_e_tim datetime,
off_days int
)
--
INSERT INTO off_note VALUES('1003','2010-3-21','2010-4-21',31)
--加班信息加班开始时间、结束时间、统计加班总时间
--创建加班信息over_note
CREATE TABLE over_note
(w_id char(4)PRIMARY KEY,
jia_tim datetime,
jia_e_tim datetime,
jia_days int
)
--
INSERT INTO over_note VALUES('1004','2010-4-21','2010-4-21',1)
-----------------------------------------------------------------------------
--查询所有职工信息
SELECT*FROM worker
--查询所有出勤记录信息
SELECT*FROM work_note
--查询所有出差信息
SELECT*FROM out_note
--查询所有请假信息
SELECT*FROM off_note
--查询所有加班信息
SELECT*FROM over_note
第七章参考文献。