mysql考勤系统设计函数_Mysql实战之员工考勤系统数据库建立

时间: 2023-08-15 21:07:52 浏览: 45
为实现员工考勤系统,需要建立以下几个表: 1.员工表(employee):用于存储员工基本信息,包括员工编号、姓名、性别、部门等。 2.考勤表(attendance):用于存储员工的考勤记录,包括考勤日期、上班时间、下班时间、迟到时间、早退时间、加班时间等。 3.部门表(department):用于存储部门信息,包括部门编号、部门名称等。 4.职位表(position):用于存储职位信息,包括职位编号、职位名称等。 5.请假表(leave):用于存储员工的请假记录,包括请假日期、请假类型、请假原因等。 6.加班表(overtime):用于存储员工的加班记录,包括加班日期、加班时长、加班原因等。 7.考勤规则表(attendance_rule):用于存储考勤规则信息,包括迟到早退规则、加班规则等。 下面是建立员工表的SQL语句: ``` CREATE TABLE `employee` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '员工编号', `name` varchar(50) NOT NULL COMMENT '员工姓名', `sex` varchar(10) NOT NULL COMMENT '员工性别', `department_id` int(11) NOT NULL COMMENT '部门编号', `position_id` int(11) NOT NULL COMMENT '职位编号', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='员工表'; ``` 建立考勤表的SQL语句: ``` CREATE TABLE `attendance` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '考勤编号', `employee_id` int(11) NOT NULL COMMENT '员工编号', `attendance_date` date NOT NULL COMMENT '考勤日期', `start_time` datetime DEFAULT NULL COMMENT '上班时间', `end_time` datetime DEFAULT NULL COMMENT '下班时间', `late_time` int(11) NOT NULL DEFAULT '0' COMMENT '迟到时间(分钟)', `early_time` int(11) NOT NULL DEFAULT '0' COMMENT '早退时间(分钟)', `overtime` int(11) NOT NULL DEFAULT '0' COMMENT '加班时间(分钟)', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='考勤表'; ``` 建立部门表的SQL语句: ``` CREATE TABLE `department` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '部门编号', `name` varchar(50) NOT NULL COMMENT '部门名称', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='部门表'; ``` 建立职位表的SQL语句: ``` CREATE TABLE `position` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '职位编号', `name` varchar(50) NOT NULL COMMENT '职位名称', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='职位表'; ``` 建立请假表的SQL语句: ``` CREATE TABLE `leave` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '请假编号', `employee_id` int(11) NOT NULL COMMENT '员工编号', `leave_date` date NOT NULL COMMENT '请假日期', `leave_type` varchar(50) NOT NULL COMMENT '请假类型', `reason` varchar(200) NOT NULL COMMENT '请假原因', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='请假表'; ``` 建立加班表的SQL语句: ``` CREATE TABLE `overtime` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '加班编号', `employee_id` int(11) NOT NULL COMMENT '员工编号', `overtime_date` date NOT NULL COMMENT '加班日期', `overtime_time` int(11) NOT NULL DEFAULT '0' COMMENT '加班时长(分钟)', `reason` varchar(200) NOT NULL COMMENT '加班原因', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='加班表'; ``` 建立考勤规则表的SQL语句: ``` CREATE TABLE `attendance_rule` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '规则编号', `late_time_rule` int(11) NOT NULL DEFAULT '0' COMMENT '迟到时间规则(分钟)', `early_time_rule` int(11) NOT NULL DEFAULT '0' COMMENT '早退时间规则(分钟)', `overtime_rule` int(11) NOT NULL DEFAULT '0' COMMENT '加班时间规则(分钟)', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='考勤规则表'; ``` 以上是建立员工考勤系统的表结构,根据实际需求可以进行修改和优化。同时需要编写相应的存储过程、触发器和函数等来实现系统功能。

相关推荐

最新推荐

recommend-type

数据库系统概念 大学数据库完整模式 mysql版.docx

开学学数据库,花了一小时完成了《数据库系统概念》中的大学数据库模式。所有的表和插入表中的信息都符合书中附录A的内容,并做出了一定的改动使其符合MySQL标准。并且有完成注释,解释了每个表的含义。
recommend-type

mysql中find_in_set()函数的使用及in()用法详解

主要介绍了mysql中find_in_set()函数的使用以及in()用法详解,需要的朋友可以参考下
recommend-type

轻松掌握MySQL函数中的last_insert_id()

前言 最近一个同事问我,为什么last_insert_id()得到的结果与预期的不一样呢,于是我就认真的去研究的一下这个参数,下面是关于last_insert_id()的详细介绍,一起来学习学习吧。 首先,举个例子 ...
recommend-type

基于php+MySql实现学生信息管理系统实例

到此这篇关于基于php+MySql实现学生信息管理系统实例的文章就介绍到这了,更多相关php+MySql实现学生信息管理系统内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!
recommend-type

如何修改mysql数据库的max_allowed_packet参数

本篇文章是对修改mysql数据库的max_allowed_packet参数进行了详细的分析介绍,需要的朋友参考下
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

用Spring boot和vue写一个登录注册界面

好的,这是一个比较常见的技术问题,我可以为您提供一些参考资料和思路。首先,您可以使用Spring Boot作为后端框架来处理用户认证和注册的逻辑,比如使用Spring Security实现用户登录认证。同时,您还需要设计相应的数据模型和数据库表结构来存储用户信息。在前端方面,您可以使用Vue.js作为框架来构建登录注册页面,使用Axios来发起API请求并和后端进行交互。当然,在实现过程中,还需要考虑一些具体细节,比如数据校验、安全性和用户体验等方面。希望这些信息能够帮助到您。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。