>데이터 베이스 >MySQL 튜토리얼 >매일 특정 시간에 실행되도록 MySQL 이벤트를 예약하려면 어떻게 해야 합니까?

매일 특정 시간에 실행되도록 MySQL 이벤트를 예약하려면 어떻게 해야 합니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-27 00:26:16634검색

How Can I Schedule a MySQL Event to Run Daily at a Specific Time?

매일 특정 시간에 MySQL 이벤트 스케줄러 실행

데이터베이스가 있고 매일 오후 1시에 레코드 상태를 "0"으로 업데이트해야 한다고 상상해 보세요. 처음에는 다음과 같은 쿼리가 떠오를 수 있습니다.

CREATE EVENT
RESET ON SCHEDULE AT TIMESTAMP DO
UPDATE `ndic`.`students`
SET `status` = '0';  

그러나 해당 쿼리는 특정 시간에 예약을 허용하지 않는 TIMESTAMP를 사용합니다. 그렇다면 어떻게 이런 결과를 얻을 수 있을까요?

그 대답은 STARTS 키워드에 있습니다. 다음은 매일 오후 1시에 이벤트를 실행하는 수정된 쿼리입니다.

CREATE EVENT event_name
  ON SCHEDULE
    EVERY 1 DAY
    STARTS (TIMESTAMP(CURRENT_DATE) + INTERVAL 1 DAY + INTERVAL 1 HOUR)
  DO
    UPDATE `ndic`.`students`
    SET `status` = '0';

이 쿼리는 (CURRENT_DATE 1 DAY 1 HOUR)에 이벤트를 시작하고 이후 24시간마다 반복합니다. 이렇게 하면 원하는 대로 매일 오후 1시에 이벤트가 실행됩니다.

위 내용은 매일 특정 시간에 실행되도록 MySQL 이벤트를 예약하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.