MySQL触发器是一种特殊的存储过程,它在某个指定的事件发生时自动执行。这些事件可以是INSERT、UPDATE或DELETE操作。触发器可以在这些事件发生之前或之后执行,从而实现对数据的自动处理和保护。
以下是一个简单的MySQL触发器示例,当在employees
表中插入新记录时,自动在employee_log
表中记录该操作:
-- 创建员工表
CREATE TABLE employees (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
salary DECIMAL(10, 2)
);
-- 创建员工日志表
CREATE TABLE employee_log (
log_id INT AUTO_INCREMENT PRIMARY KEY,
employee_id INT,
action VARCHAR(10),
log_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 创建触发器
DELIMITER $$
CREATE TRIGGER after_employee_insert
AFTER INSERT ON employees
FOR EACH ROW
BEGIN
INSERT INTO employee_log (employee_id, action) VALUES (NEW.id, 'INSERT');
END$$
DELIMITER ;
原因:
解决方法:
原因:
解决方法:
如果你需要更多关于MySQL触发器的详细信息和示例,可以参考上述链接。
领取专属 10元无门槛券
手把手带您无忧上云