MySQL多库触发器使用方法(mysql 不同库触发器)

MySQL 多库触发器使用方法

MySQL 对于数据库的操作非常灵活,包括了触发器的使用。触发器是在数据库中定义的存储过程,它们可以自动地对表的插入、更新和删除操作进行响应。除此之外,MySQL 中支持创建多个数据库,每个数据库中可以包含多个表,这样在进行数据管理时更加方便。本文将介绍MySQL多库触发器的使用方法。

1. 创建多库

在MySQL中,可以通过以下代码来创建一个新的数据库:

CREATE DATABASE db1;

同时也可以创建多个数据库:

CREATE DATABASE db2;
CREATE DATABASE db3;

多个数据库之间相互独立,互不干扰。

2. 创建表

在创建多库之后,可以在每一个库中创建表。下面我们以db1库为例,创建一张student表:

USE db1;
CREATE TABLE student(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(20) NOT NULL,
age INT,
gender VARCHAR(6),
score DECIMAL(2,1)
);

3. 创建触发器

在MySQL中,要创建触发器,可以使用CREATE TRIGGER语句。下面我们以db1库中的student表为例,创建一个在插入数据时触发的触发器:

DELIMITER $$
CREATE TRIGGER insert_student
AFTER INSERT ON student FOR EACH ROW
BEGIN
INSERT INTO student_log
VALUES (NEW.id, NEW.name, "insert");
END$$
DELIMITER ;

在这个触发器中,我们定义了在对student表进行插入操作时触发,然后将插入操作的相关信息插入到student_log表中。

4. 触发器调用

在MySQL中,触发器是自动调用的,无需手动调用。当有相关操作时,触发器也会自动执行。下面我们插入一条数据到student表中,让触发器自动执行:

INSERT INTO student(name, age, gender, score)
VALUES ("张三", 20, "男", 91.5);

当插入成功后,我们可以查询student_log表,验证触发器是否执行:

SELECT * FROM student_log;

如果输出以下内容,说明触发器执行成功:

+----+-------+--------+
| id | name | action |
+----+-------+--------+
| 1 | 张三 | insert |
+----+-------+--------+

到此,我们完成了MySQL多库触发器的使用方法。在实际应用中,MySQL的触发器可以帮助我们进行数据操作和记录,提高数据管理的效率和安全性。


数据运维技术 » MySQL多库触发器使用方法(mysql 不同库触发器)