Автоматически удалять запись в таблице, когда дата истекла?

Я хотел бы знать, как я могу автоматически удалить запись, когда дата истекла, я создаю сайт бронирования авиабилетов. Мне нужно удалить из моей базы данных mysql все истекшие детали полета. Я где-то читал, что могу использовать cron, но я понятия не имею, как это сделать. Любая справка для скрипта будет очень полезна.

Related of "Автоматически удалять запись в таблице, когда дата истекла?"

Вы можете попробовать использовать MySQL Events для этого:

 CREATE EVENT IF NOT EXISTS `dbName`.`eventName` ON SCHEDULE EVERY 1 DAY // or 1 HOUR COMMENT 'Description' DO BEGIN DELETE FROM `dbName`.`TableName` WHERE `DateCol` < NOW(); END 

Учтите, что планировщик событий MySQL должен быть включен на вашем сервере:

 SET GLOBAL event_scheduler = ON; 

Больше информации здесь .

Удаление записей – это не очень хорошая идея, я предлагаю вам добавить ActiveFrom и ActiveTo DateTime Column в таблицу Details, а затем не отображать истекшие записи в вашем лицевом конце.

Вам необходимо, чтобы служба проверяла истекшие записи и периодически удаляла их. Вы должны использовать этот SQL:

УДАЛИТЬ ТЕМУ ТРЕБУЕТСЯ WHERE RecordDate <@Expiration

Крон наиболее подходит в вашей ситуации.

  • Создайте свой php-файл, который удаляет или помещает нежелательный полет, сценарий будет просто подключаться к базе данных, выполнять ваш запрос и, возможно, выводить короткое сообщение о неудаче / сбое.
  • Настройте задание cron, которое выполняет этот скрипт php каждые X часов или все, что вы хотите.

Если вы используете CPanel, вы можете настроить свое задание cron

Используйте CRON Jobs. Посмотрите на приведенное ниже представление.

 Minutes [0-59] | Hours [0-23] | | Days [1-31] | | | Months [1-12] | | | | Days of the Week [Numeric, 0-6] | | | | | * * * * * home/path/to/command/the_command.sh 

Если вы хотите запланировать запуск задачи каждую субботу в 8:30, это, скорее всего, будет выглядеть следующим образом.

 30 8 * * 6 home/path/to/command/the_command.sh 

Просто поиграйте со своими настройками, и вы в конце концов получите его.