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.pswp.cn/news/530025.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/530025.shtml
英文地址,請注明出處:http://en.pswp.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連接。…