给我员工表、管理员表、部门表、工资表、职位表以及考情表的创建代码,并关联以上的表结构
时间: 2023-07-04 15:20:43 浏览: 37
以下是员工表、管理员表、部门表、工资表、职位表以及考勤表的创建代码,并且关联了以上表结构:
创建员工表:
```
CREATE TABLE employee (
id INT PRIMARY KEY,
name VARCHAR(50),
gender VARCHAR(10),
phone VARCHAR(20),
email VARCHAR(100),
hire_date DATE,
dept_id INT,
job_id INT,
FOREIGN KEY (dept_id) REFERENCES department(id),
FOREIGN KEY (job_id) REFERENCES job(id)
);
```
创建管理员表:
```
CREATE TABLE admin (
id INT PRIMARY KEY,
username VARCHAR(50),
password VARCHAR(50),
email VARCHAR(100),
phone VARCHAR(20)
);
```
创建部门表:
```
CREATE TABLE department (
id INT PRIMARY KEY,
name VARCHAR(50),
manager_id INT,
FOREIGN KEY (manager_id) REFERENCES employee(id)
);
```
创建工资表:
```
CREATE TABLE salary (
id INT PRIMARY KEY,
employee_id INT,
salary DECIMAL(10,2),
pay_date DATE,
FOREIGN KEY (employee_id) REFERENCES employee(id)
);
```
创建职位表:
```
CREATE TABLE job (
id INT PRIMARY KEY,
title VARCHAR(50),
description VARCHAR(200),
salary DECIMAL(10,2)
);
```
创建考勤表:
```
CREATE TABLE attendance (
id INT PRIMARY KEY,
employee_id INT,
check_in DATETIME,
check_out DATETIME,
FOREIGN KEY (employee_id) REFERENCES employee(id)
);
```
以上是创建表的代码,下面是表之间的关系:
1. 员工表和部门表的关系是一对多关系,一个部门可以有多个员工,一个员工只属于一个部门。
2. 员工表和职位表的关系是一对一关系,一个员工只有一个职位,一个职位只能被一个员工拥有。
3. 员工表和管理员表没有关系,管理员表只是用来管理系统的。
4. 员工表和工资表的关系是一对多关系,一个员工可以有多个工资记录,一个工资记录只属于一个员工。
5. 员工表和考勤表的关系是一对多关系,一个员工可以有多个考勤记录,一个考勤记录只属于一个员工。