获取触发器中的上一个字段值 mysql
get previous field value in trigger mysql
我在 MySQL 中有一个这样的触发器:
DELIMITER $
CREATE TRIGGER service_before_update BEFORE UPDATE ON service
FOR EACH ROW
BEGIN
IF NEW.seatCount < (?) THEN
SIGNAL SQLSTATE '12345';
END IF;
END$
DELIMITER ;
而不是 (?) 我想要 "seatCount" 的先前值有没有简单的方法或者我应该使用这样的东西(ServiceNo 是 PRI 密钥):
(SELECT seatCount FROM service WHERE serviceNo = NEW.serviceNo LIMIT 1)
是的,超级简单。 OLD.seatCount
应该做你想做的。 http://dev.mysql.com/doc/refman/5.0/en/trigger-syntax.html 有更多信息。
我在 MySQL 中有一个这样的触发器:
DELIMITER $
CREATE TRIGGER service_before_update BEFORE UPDATE ON service
FOR EACH ROW
BEGIN
IF NEW.seatCount < (?) THEN
SIGNAL SQLSTATE '12345';
END IF;
END$
DELIMITER ;
而不是 (?) 我想要 "seatCount" 的先前值有没有简单的方法或者我应该使用这样的东西(ServiceNo 是 PRI 密钥):
(SELECT seatCount FROM service WHERE serviceNo = NEW.serviceNo LIMIT 1)
是的,超级简单。 OLD.seatCount
应该做你想做的。 http://dev.mysql.com/doc/refman/5.0/en/trigger-syntax.html 有更多信息。