MySQL中的触发器(Trigger)是一种特殊的存储过程,它会在指定的事件(如INSERT、UPDATE或DELETE)发生时自动执行。触发器可以用于在数据变更前后执行一些额外的操作,如日志记录、数据验证等。
MySQL中的触发器主要有以下几种类型:
假设有两个表table1
和table2
,我们希望在向table1
插入数据时,自动向table2
插入相同的数据。
CREATE TABLE table1 (
id INT PRIMARY KEY,
name VARCHAR(50)
);
CREATE TABLE table2 (
id INT PRIMARY KEY,
name VARCHAR(50)
);
DELIMITER $$
CREATE TRIGGER after_table1_insert
AFTER INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO table2 (id, name) VALUES (NEW.id, NEW.name);
END$$
DELIMITER ;
INSERT INTO table1 (id, name) VALUES (1, 'Alice');
此时,table2
中也会自动插入一条数据:
SELECT * FROM table2;
输出:
+----+-------+
| id | name |
+----+-------+
| 1 | Alice |
+----+-------+
希望以上信息对你有所帮助!如果有更多问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云