Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL - Altere o valor do campo após X minutos de inatividade


Tente fazer isso com MySQL agendamento :
  DELIMITER $$
  CREATE EVENT deactivation
    ON SCHEDULE EVERY 10 MINUTE STARTS CURRENT_TIMESTAMP
    DO
      BEGIN
        UPDATE tbl SET tbl.active = FALSE
           WHERE tbl.active = TRUE AND 
           ( TIME_TO_SEC( TIMEDIFF (NOW(),tbl.updated) ) / 60 ) > 10;
      END;
  $$;

Onde tbl.updated é o seu carimbo de data/hora (gerado com php). Como minha caixa de teste é inacessível atm, não tenho certeza se essa consulta está correta, mas geralmente deve fazer o trabalho.