MYSQL人事工资管理系统--数据库表及表设计(一)-阿里云开发者社区

开发者社区> 数据库> 正文

MYSQL人事工资管理系统--数据库表及表设计(一)

简介:
在做人事工资管理系统之前,要学习MySQL基础知识.比如:创建数据库及数据库表,增加字段,删除字段,修改字段,创建主键和外键,查询数据、创建视图、创建存储过程、创建触发器等.
开始试着做个完整的数据库管理系统。数据库有几个表,每个表有哪些字段,每个表有那个是主键,表与表之间的关系。“人事工资管理系统”的用户数据库由以下7个表组成,各个表的结构设计如下:
创建人事管理系统流程:
数据库及表设计--》数据库的数据完整性设计--》数据库对象设计设计视图--》设计存储过程--设计触发器
创建一个名为HRMS数据库
MYSQL>CREATE DATABASE HRMS;
打开HRMS数据库
MYSQL>USE HRMS;
HRMS创建七个表(部门表(DEPARTMENT)、职工档案表(EMPLOYEE)、工资档案表(WAGE)工资发放表(PWAGE)考勤表(ATTENDANCE)、奖惩表(RP)、变动表(CHANGES)
MYSQL>CREATE TABLE DEPARTMENT(DEPARTMENT_ID CHAR(4),DEPARTMENT_NAME CHAR(10),DEPARTMENT_NUMBER INT(11),DEPARTMENT_LEADER CHAR(8),TELEPHONE CHAR(15));
显示数据库部门表DEPARTMENT
MYSQL>DESC DEPARTMENT;
MYSQL>CREATE TABLE EMPLOYEE(DEPARTMENT_NAME CHAR(10),EMPLOYEE_ID CHAR(4),EMPLOYEE_NAME CHAR(8),GENDER CHAR(2),BRITH DATETIME,NATIONAL CHAR(6),POL CHAR(4),MARTIAL CHAR(2),HOME_ADDRESS VARCHAR(50),JOIN_TIME DATETIME,EDUCATION CHAR(6),TITLE CHAR(6),PHONE CHAR(15),ID_NUMBER CHAR(18),NOTES VARCHAR(50));
显示数据库表职工档案表EMPLOYEE
MYSQL>DESC EMPLOYEE;
MYSQL>CREATE TABLE ATTENDANCE(EMPLOYEE_ID CHAR(4),EMPLOYEE_NAME CHAR(8),OVERTIME INT(11),LEA INT(11),ABSENT INT(11),DATE DATETIME);
显示数据库表考勤表ATTENDANCE
MYSQL>DESC ATTENDANCE;
MYSQL>CREATE TABLE WAGE(EMPLOYEE_ID CHAR(4),EMPLOYEE_NAME CHAR(8),BASIC_WAGE DECIMAL(8,2),POST_WAGE DECIMAL(8,2),SUBSIDIES DECIMAL(8,2),FUND DECIMAL(8,2));
显示数据库表工资档案表WAGE
MYSQL>DESC WAGE;
MYSQL>CREATE TABLE PWAGE(EMPLOYEE_ID CHAR(4),EMPLOYEE_NAME CHAR(8),FIXED_WAGE DECIMAL(8,2),BUNS DECIMAL(8,2),RAISE_WAGE DECIMAL(8,2),CUT_WAGE DECIMAL(8,2),WAGES DECIMAL(8,2),DATE DATETIME,NOTES VARCHAR(50));
工资发放表PWAGE
MYSQL>DESC PWAGE;
CREATE TABLE RP(NUMBER INT(11),EMPLOYEE_ID CHAR(4),EMPLOYEE_NAME CHAR(8),RP_NOTES CHAR(8),RP_TYPE CHAR(2),DATE DATETIME);
奖惩表RP
MYSQL>DESC RP;
YSQL>CREATE TABLE EMPLOYEE_CHANGES(NUMBER INT(11),EMPLOYEE_ID CHAR(4),EMPLOYEE_NAME CHAR(8),ORIGINAL_DEPARTMENT CHAR(10),INTO_DEPARTMENT CHAR(10),DATE DATETIME,NOTE TEXT(50));
示数据库表职工变动表EMPLOYEE_CHANES
MYSQL>DESC EMPLOYEE_CHANGES;
二步骤:
MYSQL>ALTER TABLE DEPARTMENT MODIFY DEPARTMNET_ID CHAR(4) NOT NULL;
MYSQL>DESC DEPARTMENT;
YSQL>ALTER TABLE EMPLOYEE MODIFY GENDER CHAR(2) NOT NULL;
MYSQL>DESC EMPLOYEE;
YSQL>ALTER TABLE PWAGE MODIFY EMPLOYEE_ID CHAR(4) NOT NULL;
MYSQL>DESC PWAGE;
YSQL>ALTER TABLE EMPLOYEE_CHANGES MODIFY EMPLOYEE_ID CHAR(4) NOT NULL;
MYSQL>ALTER TABLE EMPLOYEE_CHANGES MODIFY ORIGINAL_DEPARTMENT CHAR(10) NOT NULL;
MYSQL>ALTER TABLE EMPLOYEE_CHANGES MODIFY INTO_DEPARTMENT CHAR(10) NOT NULL;
 
 
写了个MySQL表,看了给点意见和建议,给点支持!









本文转自 chen138 51CTO博客,原文链接:http://blog.51cto.com/chenboqiang/279038,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章