其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

mysql存储过程4张表用途

GG网络技术分享 2025-03-18 16:17 1


MySQL是一个流行的关系型数据库管理系统,在数据库设计中,存储过程是一块相对较新的技术。在MySQL存储过程中,可以使用4张表来管理不同的数据,这些表的用途如下:

CREATE TABLE `departments` (

`dept_no` char(4) NOT NULL,

`dept_name` varchar(40) NOT NULL,

PRIMARY KEY (`dept_no`),

UNIQUE KEY `dept_name` (`dept_name`)

) ENGINE=InnoDB;

CREATE TABLE `titles` (

`emp_no` int(11) NOT NULL,

`title` varchar(50) NOT NULL,

`from_date` date NOT NULL,

`to_date` date DEFAULT NULL,

PRIMARY KEY (`emp_no`,`title`,`from_date`),

KEY `emp_no` (`emp_no`),

CONSTRAINT `titles_ibfk_1` FOREIGN KEY (`emp_no`) REFERENCES `employees` (`emp_no`) ON DELETE CASCADE

) ENGINE=InnoDB;

CREATE TABLE `employees` (

`emp_no` int(11) NOT NULL,

`birth_date` date NOT NULL,

`first_name` varchar(14) NOT NULL,

`last_name` varchar(16) NOT NULL,

`gender` enum(\'M\',\'F\') NOT NULL,

`hire_date` date NOT NULL,

PRIMARY KEY (`emp_no`)

) ENGINE=InnoDB;

CREATE TABLE `salaries` (

`emp_no` int(11) NOT NULL,

`salary` int(11) NOT NULL,

`from_date` date NOT NULL,

`to_date` date NOT NULL,

PRIMARY KEY (`emp_no`,`from_date`),

KEY `emp_no` (`emp_no`),

CONSTRAINT `salaries_ibfk_1` FOREIGN KEY (`emp_no`) REFERENCES `employees` (`emp_no`) ON DELETE CASCADE

) ENGINE=InnoDB;

这些表的用途是:

1. departments表格:用于存储公司的各个部门的信息,如部门编号、部门名字等。在实际应用中,我们常常需要根据部门信息来进行统计或者查询。

2. titles表格:用于存储员工职称的变化信息。因为员工的职称往往会因为升职、调整、离职等因素发生变化,所以我们需要一个表格来记录这些变化。titles表格中存储的是员工的职称、职称变化的起始日期和终止日期等信息。

3. employees表格:用于存储公司员工的基本信息,如员工编号、员工姓名、性别、出生日期、入职日期等。我们可以借助employees表格来查询员工的详细信息,如员工的籍贯、学历、工作经验等。

4. salaries表格:用于存储公司员工的薪资信息。salaries表格中存储的是员工的薪资变化信息,包括薪资、起始日期和终止日期等。

标签: 表格 员工

提交需求或反馈

Demand feedback