mysql考勤系统设计函数_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,

sex ENUM('男','女') NOT NULL,

age INT NOT NULL,

phone CHAR(20) NOT NULL,

email CHAR(20) NOT NULL,

department_id INT NOT NULL,

manager_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,

manager_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,

maxSalary INT NOT NULL

);

DESC jobs;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/530025.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux mysql 修改字符集_linux下mysql修改字符集,远程连接

安装时候很简单,但是安装了后一般不能用安装后 首先执行mysql -u root mysql这是就会进入mysql命令窗口,这样是可以使用的,但是我们要先设置密码1、先设置密码UPDATE user SET PasswordPASSWORD(123456) where USERroot;2、重新设置一遍密码&…

mysql授权远程访问命令_mysql 授权远程连接

解决方案改表法可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称…

MySQL根据员工姓名所在部门_用一条SQL语句显示所有人员的姓名及所在部门

给定以下两个表:部门ID部门名称1部门12部门23部门34部门4人员ID人员姓名部门ID1姓名112姓名213姓名324姓名435姓名55(1)用一条SQL语句显示所有人员的姓名及所在部门,没有部门的用“...给定以下两个表:部门ID 部门名称1 部门12 部门23 部门34 …

mysql begin operations_MySQL入门(七):More JOIN operations

Sqlzoo习题练习:More JOIN operations下面会涉及到更多连接的概念。数据库由三个表组成:movie , actor 和 casting以及三个表之间的关系。下面为More JOIN 习题内容:--#1/*List the films where the yr is 1962 [Show id, title]*/SELECT id,…

win10安装mysql5.7.15_win10上如何安装mysql5.7.16(解压缩版)

注:本文涉及的是解压缩版的安装安装教程下载mysql解压缩下载的文件修改ini文件(在解压缩后的mysql文件夹中)实际上修改的是my-default.ini文件在文件中添加如下路径和地址其中的data文件夹是没有的必须自己创建。# These are commonly set, remove the # and set as…

mysql error log清理_手动删除mysql日志/var/log/mysql/error.log导致的mysql无法启动

问题环境ubuntu-mate for raspberrymysql默认配置问题起源最近在搞fail2ban这东西,顺便翻了翻各种日志,然后看见mysql的日志有点多就想清理一下,于是直接sudo rm -r /var/log/mysql了一下,结果重启之后发现mysql就不跑了。。。手动…

mysql开启权限控制_mysql开启远程访问及相关权限控制

开启mysql远程访问:授予用户user 密码 passwd 所有权限 所有主机IP可访问授权语句:Grant on 表名[(列名)] to 用户 With grant option或 GRANT ON FROM GRANT ALL PRIVILEGES ON *.* TO user% IDENTIFIED BY passwd WITH GRANT OPTION;ALL PRIVILEGES表示…

mysql awr 上海用户组_mysql awr v1.0.3修正说明以及发布

本版本计划修正或者包含如下内容:1、innodb buffer_pool只是分配的vm大小,实际并不一定真正使用这么多,还可能会有内存泄露,故调整从innodb_buffer_pool_stats获取实际值并显示,同时获取mysqld进程实际占用的物理内存&…

mysql如何备份一个表单_Mysql亿级数据大表单表备份

上一篇Mysql已有亿级数据大表按时间分区,介绍了亿级数据大表如何按时间分区,也留下了一个问题:备份亿级数据大表要耗时多久。本篇将就如何备份亿级数据大表展开讨论。注意:我这里所说的备份指的是数据从一张表拷贝到另外一张表&am…

mysql mos login_MySQL 中常用的函数

一、DATE_FORMAT()需求:按照日期月份统计数据,但数据库存储的格式是 2020-10-01 10:20:45 ,因此需要格式化日期语法:DATE_FORMAT(date,format)第一个参数:指定的日期,第二个参数:需要获取的格式…

mysql用户信息备份还原_mysql迁移之新建用户、备份还原数据库

事例➜ 1 mysql -uzixie -pzixie game < /temp/zixie_back.sqlmysql: [Warning] Using a password on the command line interface can be insecure.➜ 1 mysql -uzixie -p"zixie"mysql: [Warning] Using a password on the command line interface can be insecu…

centos radius mysql_FreeRadius2 MySQL配置

FreeRadius2可以和MySQL进行集成&#xff0c;集成的内容包括创建符合要求的数据库和表结构&#xff0c;为MySQL进行的相关配置&#xff0c;基于数据库安装Web管理程序(如daloradius,ARA等)&#xff0c;大部分内容可以参见0. 环境FreeRadius2 / MySQL 5 /CentOS 5.5(VirtualBox)…

需求调研的方法及过程_培训需求调研方法

课程设计与开发是每一位职业培训师都必须会的技能&#xff0c;今天我们就来分享一下如何开发课程。第一节课&#xff0c;让我们先从培训需求调研开始。培训需求调研方法有很多&#xff0c;从个体层次分为&#xff1a;问卷法、观察法、访谈法&#xff1b;从组织层次分为&#xf…

java报错空指针异常_java – 空指针异常错误,没有明显的代码错误

我在这里有一个错误,我不知道它来自哪里.我在初学者的java课程是高中,所以我在这里还没有太多的经验.我有3个相互合并的程序.我有一个卡片类,可以创建一张扑克牌//********************************************************************// Card.java Author: Lewis and Loftus…

mysql表的设计几种方式_支持多种登录方式的数据表设计 | 六阿哥博客

一个带有用户系统的应用最基本登录方式是站内账号登录&#xff0c;但这种方式往往不能满足我们的需求。现在的应用基本都有站内账号、email、手机和一堆第三方登录&#xff0c;那么如果需要支持这么多种登录方式&#xff0c;或者还有银行卡登录、身份证登录等等更多的登录方式&…

将Go语言开发的Web程序部署到K8S

搭建K8S基础环境 如果已经有K8S环境的同学可以跳过&#xff0c;如果没有&#xff0c;推荐你看看我的《Ubuntu22加Minikue搭建K8S环境》&#xff0c;课程目录如下&#xff1a; Ubuntu22安装Vscode 下载&#xff1a;https://code.visualstudio.com/Download 安装命令&#…

python 扫描仪_基于Opencv和Python的多选扫描仪

首先&#xff0c;我检测到图像右侧的20个黑框&#xff0c;然后将x和宽度添加到列表中&#xff1a;image cv2.imread(args["image"])gray cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)(_, thresh) cv2.threshold(gray, 220, 255,cv2.THRESH_BINARY)kernel cv2.getStr…

mysql dmz_MySQL 中LIMIT的使用详解

MySQL的Limit子句Limit子句可以被用于强制 SELECT 语句返回指定的记录数。Limit接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数&#xff0c;第一个参数指定第一个返回记录行的偏移量&#xff0c;第二个参数指定返回记录行的最大数目。//初始记录行的偏移量…

python编程入门到实践笔记习题_Python编程从入门到实践笔记——列表简介

python编程从入门到实践笔记——列表简介#codingutf-8#列表——我的理解等于c语言和java中的数组bicycles ["trek","cannondale","readline","specialized"]print(bicycles)#列表索引从0开始print(bicycles[0].title())#访问列表元素…

informatica mysql odbc_Informatica 配置mysql community odbc连接

Informatica linux 版本内置的DataDirect 驱动支持各种数据库例如oracle、sybase、postgreSQL、Greenplum、mysql等等但是mysql 只支持企业版本&#xff0c;如果我们使用的是community 社区版本便不能使用自带的DataDirect方式了&#xff0c;那我们就需要手动配置其他odbc连接。…