MySQL 触发器中的 NEW 和 OLD 关键字详解
在 MySQL 中,'NEW' 和 'OLD' 是两个特殊的关键字,用于触发器中。当触发器被激活时,它们分别表示插入或更新前的旧数据和插入或更新后的新数据。
'NEW' 和 'OLD' 是只读变量,不能被赋值。它们的使用方式如下:
- 在 INSERT 触发器中,'NEW' 表示插入的新数据。
- 在 UPDATE 触发器中,'OLD' 表示更新前的旧数据,'NEW' 表示更新后的新数据。
- 在 DELETE 触发器中,'OLD' 表示删除的旧数据。
以下是一个例子,演示如何在触发器中使用 'NEW' 和 'OLD':
CREATE TRIGGER mytrigger
AFTER INSERT ON mytable
FOR EACH ROW
BEGIN
INSERT INTO mylog (id, message) VALUES (NEW.id, 'New record inserted');
END;
在上面的例子中,当在 mytable 表中插入一条新记录时,触发器会将一条新日志插入到 mylog 表中。在插入语句中,NEW.id 表示插入的新记录的 id 值。
原文地址: https://www.cveoy.top/t/topic/mIAb 著作权归作者所有。请勿转载和采集!