我有以下触发器
CREATE TRIGGER `qc_date_trigger` AFTER UPDATE ON `brand`
FOR EACH ROW BEGIN
IF NEW.brandQC = '1' THEN
SET @brandQCDate = CURDATE();
ELSE
SET @brandQCDate = NULL;
END IF;
END
出于某种原因,当QC = 1时,它不会将我的Date字段更新为当前日期。我已经检查了mysql文档,它应该可以工作。任何想法?
答案 0 :(得分:0)
如果您的列名为brandQCDate,请删除@
。 @
使其成为用户定义的变量,而不是列。您还希望将其设为BEFORE UPDATE
触发器。
CREATE TRIGGER `qc_date_trigger` BEFORE UPDATE ON `brand`
FOR EACH ROW BEGIN
IF NEW.brandQC = '1' THEN
SET NEW.brandQCDate = CURDATE();
ELSE
SET NEW.brandQCDate = NULL;
END IF;
END