masql工资管理系统数据库和表
时间: 2023-07-08 09:17:07 浏览: 30
数据库设计是一个比较复杂和需要经验的工作,需要根据具体业务场景和需求进行设计。下面是一个简单的工资管理系统的数据库设计和表结构:
1. 数据库名称:salary_management_system
2. 表结构:
- 员工表(employee):
```
CREATE TABLE employee (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
gender ENUM('男', '女') NOT NULL,
age TINYINT(3) NOT NULL,
department VARCHAR(50) NOT NULL,
position VARCHAR(50) NOT NULL,
salary FLOAT(10, 2) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
```
- 薪资发放记录表(salary_record):
```
CREATE TABLE salary_record (
id INT(11) NOT NULL AUTO_INCREMENT,
employee_id INT(11) NOT NULL,
month DATE NOT NULL,
basic_salary FLOAT(10, 2) NOT NULL,
bonus FLOAT(10, 2) NOT NULL,
deduction FLOAT(10, 2) NOT NULL,
actual_salary FLOAT(10, 2) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (employee_id) REFERENCES employee(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
```
3. 表说明:
- 员工表用于存储员工的基本信息,包括姓名、性别、年龄、所在部门、职位和工资等信息。
- 薪资发放记录表用于记录每个员工每个月的薪资发放情况,包括基本工资、奖金、扣款和实际发放工资等信息。其中,employee_id 是外键,关联到员工表的 id 字段。
以上仅是一个简单的数据库设计和表结构,具体的需求和业务场景可能需要更多的表和字段来满足。