我有以下触发器
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 时,它不会将我的日期字段更新为当前日期。我已经检查了 mysql 文档,它应该可以工作。有什么想法吗?
最佳答案
如果您的列名为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
关于Mysql当前日期触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23212928/