Mysql当前日期触发器

标签 mysql triggers

我有以下触发器

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/

相关文章:

mysql - 在触发器中打印消息

sql - 相当于 SQL Server INSERTED 和 DELETED 表的 Oracle

android - Android 单声道 : Spinner ItemSelected event triggers on load but shouldn't?

php - 我可以阻止我的虚拟主机提供商访问我的 "mySQL"数据库中的信息吗?

java - 如何从Zip文件中提取Json数据并将提取的Json文件发送到前端?

mysql - 如何将所有mysql数据库导入r

php - 空输出触发错误

php pdo 在特定日期获取数据返回空结果

oracle - 如何在 oracle 11g 的 sqlplus 中更改分隔符

MySQL 触发器 concat 与 curdate()