0

我需要制作一个触发器,该触发器将在更新一行后激活。当 updated_at 与当前时间之间的时间差为五 (5) 分钟时,它会将 OTP 列重置为空。

这是我的表模式,我的表名是customers表模式

我试过这个:

CREATE TRIGGER 'ttl' AFTER 
UPDATE
   ON customers FOR EACH ROW 
   BEGIN
      UPDATE
         TABLE customers 
         SELECT
            TIMESTAMPDIFF(MINUTE, updated_at, now()) > 5 
         SET
            otp = 0;
   END

它不工作

4

1 回答 1

0

before 触发器可以在更新前调整 new.otp 列。https://www.techonthenet.com/mysql/triggers/before_update.php在该表的更新触发器中更新真实表并不好,可能是一个无限循环。

于 2020-07-05T20:53:05.717 回答