7 日後に MySQL レコードを自動的に削除するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-27 14:17:11
オリジナル
649 人が閲覧しました

How to Automatically Delete MySQL Records After Seven Days?

一定期間後の MySQL レコードの削除

この投稿では、指定した時間間隔の後に MySQL データベースからレコードが削除される問題に対処します。

問題:

MySQL テーブル内のメッセージ「id」、「message」、および「date」列を含む列は 7 日後に削除する必要があります。日付は「YYYY-MM-DD HH:MM:SS」の形式で指定します。この削除プロセスには cron ジョブではなく MySQL イベントを使用することが提案されています。

クエリ:

以下のクエリには、7 より古いメッセージを削除するための修正された条件が含まれています。 days:

CREATE EVENT delete_event
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
ON COMPLETION PRESERVE
DO BEGIN
    DELETE messages WHERE date < DATE_SUB(NOW(), INTERVAL 7 DAY);
END;
ログイン後にコピー

説明:

質問で提案されている条件を使用する代わりに (「DELETEmessages WHERE date >= (現在の日付 - 7 日)」 )")、「WHERE date

推奨事項:

これには MySQL イベントを使用できます。この目的では、単純な cron スクリプトを使用することも有効なオプションです。これにより、メンテナンスが容易になり、複雑な SQL 回避策が回避され、システムとシームレスに統合されます。

以上が7 日後に MySQL レコードを自動的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート