MySQL触发器是一种特殊的存储过程,它会在指定的事件(如INSERT、UPDATE或DELETE)发生时自动执行。触发器可以在同一个数据库中的特定表上定义,并且可以在数据修改之前或之后执行。
MySQL触发器主要有以下几种类型:
以下是一个在MySQL中创建触发器的示例,该触发器在插入数据到orders
表时,自动创建一个对应的order_log
表,并记录插入的数据。
DELIMITER $$
CREATE TRIGGER after_orders_insert
AFTER INSERT ON orders
FOR EACH ROW
BEGIN
CREATE TABLE IF NOT EXISTS order_log (
log_id INT AUTO_INCREMENT PRIMARY KEY,
order_id INT,
order_date DATETIME,
customer_id INT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO order_log (order_id, order_date, customer_id)
VALUES (NEW.order_id, NEW.order_date, NEW.customer_id);
END$$
DELIMITER ;
通过以上信息,你应该对MySQL触发器有了更深入的了解,并能够根据具体需求创建和应用触发器。
领取专属 10元无门槛券
手把手带您无忧上云