Mysql实战之员工考勤系统数据库建立

一、项目可行性

伴随着公司的范围不断扩大,企业人事管理的日趋繁杂和公司员工的增加,急需解决开发设计根据互联网的员工考勤管理系统软件来提升管理的高效率。

二、科学研究目地

以中小企业的考勤管理业务流程为借助,融合创新管理的基础理论,设计方案并开发设计一个员工考勤管理系统软件, 提供一个切实可行的考勤管理解决方法。

系统软件总体目标如下所示:

1. 提供更为方便快捷、简易的实际操作。

2. 提升公司固有的考勤管理规章制度,为不一样管理幅度提供相匹配的作用。

3. 节约考勤管理的成本费、提升公司考勤管理的清晰度和高效率。

4. 系统对提供必需的权限管理方法。

5. 为公司完成总体信息化的其它相关的系统软件提供必需的信息适用。

本设计方案利用Mysql创建数据库,报表化储存,利用表的增,删,改,查作用来管理方法员工信息,对数据库查询设置需要的权限,仅有具备权限的优秀人才能开展查询,改动数据信息。

三、需求分析

1、用户服务控制模块

每提升一名新员工,必须设定权限和登陆密码。当该员工必须修改密码时,可以在登陆密码控制模块开展变更。当一位员工辞职后,从系统中删掉该客户信息。改动客户权限,使一些员工只有有一些权限。

2、基本信息管理方法控制模块

提升,删掉,改动,查看员工的基本上信息,考勤管理信息,统计分析其外出,加班加点,休假等信息。

四、系统流程图和E-R图

1、数据流程图

2、功能结构图

3、E-R 图

(1)员工E-R图

(2)出勤率E-R图

(3)加班加点E-R图

(4)外出E-R图

(5)休假E-R图

(6)单位E-R图

(7)技术工种E-R图

五、数据分析表创建

(1)建立员工表

CREATE TABLE IF NOT EXISTS employees( employee_id INT PRIMARY KEY UNIQUE NOT NULL, eName VARCHAR(20) NOT NULL, ** ENUM('男','女') NOT NULL, age INT NOT NULL, phone CHAR(20) NOT NULL, e ** il CHAR(20) NOT NULL, department_id INT NOT NULL, ** nager_id INT NOT NULL, job_id INT NOT NULL, eAttend TINYINT DEFAULT 0 NOT NULL);DESC employees;

(2)创建考勤统计表

CREATE TABLE IF NOT EXISTS attendance( attendID INT PRIMARY KEY UNIQUE NOT NULL, employee_id INT NOT NULL, eName VARCHAR(20) NOT NULL, onWork_am DATETIME NOT NULL, offWork_am DATETIME NOT NULL, onWork_pm DATETIME NOT NULL, offWork_pm DATETIME NOT NULL, recordTime DATETIME NOT NULL);DESC attendance;

(3)建立加班表

REATE TABLE IF NOT EXISTS overtime( otID INT PRIMARY KEY UNIQUE NOT NULL, employee_id INT NOT NULL, eName VARCHAR(20) NOT NULL, otStyle VARCHAR(20) NOT NULL, otStartTime DATETIME NOT NULL, otEndTime DATETIME NOT NULL );DESC overtime;

(4)创建外出表

CREATE TABLE IF NOT EXISTS businessTrip( btID INT PRIMARY KEY UNIQUE NOT NULL, employee_id INT NOT NULL, eName VARCHAR(20) NOT NULL, btStyle VARCHAR(20) NOT NULL, btStartTime DATETIME NOT NULL, btEndTime DATETIME NOT NULL);DESC businessTrip;

(5) 建立休假表

CREATE TABLE IF NOT EXISTS absence( abID INT PRIMARY KEY UNIQUE NOT NULL, employee_id INT NOT NULL, eName VARCHAR(20) NOT NULL, abStyel VARCHAR(20) NOT NULL, abStartTime DATETIME NOT NULL, abEndTime DATETIME NOT NULL);DESC absence;

(6)创建单位表

CREATE TABLE IF NOT EXISTS department( department_id INT PRIMARY KEY UNIQUE NOT NULL, department_name VARCHAR(20) NOT NULL, ** nager_id INT NOT NULL);DESC department;

(7)创建技术工种表

CREATE TABLE IF NOT EXISTS jobs( job_id INT PRIMARY KEY UNIQUE NOT NULL, job_name VARCHAR(20) NOT NULL, minSalary INT NOT NULL, ** xSalary INT NOT NULL );DESC jobs;

扫码免费用

源码支持二开

申请免费使用

在线咨询