MySQL触发器是一种特殊的存储过程,它会在指定的事件发生时自动执行。这些事件可以是INSERT、UPDATE或DELETE操作。触发器可以在这些操作之前(BEFORE)或之后(AFTER)执行,从而实现对数据的自动处理和保护。
以下是一个简单的MySQL触发器示例,当在employees
表中插入新记录时,自动在employee_log
表中记录一条日志。
-- 创建员工表
CREATE TABLE employees (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
salary DECIMAL(10, 2)
);
-- 创建员工日志表
CREATE TABLE employee_log (
log_id INT PRIMARY KEY AUTO_INCREMENT,
employee_id INT,
action VARCHAR(10),
action_time TIMESTAMP
);
-- 创建触发器
DELIMITER //
CREATE TRIGGER after_employee_insert
AFTER INSERT ON employees
FOR EACH ROW
BEGIN
INSERT INTO employee_log (employee_id, action, action_time)
VALUES (NEW.id, 'INSERT', NOW());
END //
DELIMITER ;
希望这些信息对你有所帮助!如果有更多问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云