Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Menjadualkan Prosedur Tersimpan untuk Berjalan Secara Berkala dalam MySQL?

Bagaimana untuk Menjadualkan Prosedur Tersimpan untuk Berjalan Secara Berkala dalam MySQL?

Susan Sarandon
Susan Sarandonasal
2024-11-04 08:39:30256semak imbas

How to Schedule a Stored Procedure to Run Regularly in MySQL?

Cara Menjadualkan Rutin dalam MySQL

MySQL membolehkan anda menjadualkan prosedur tersimpan untuk dijalankan pada selang waktu tertentu. Ini boleh berguna untuk mengautomasikan tugas seperti pembersihan data atau laporan biasa. Untuk menjadualkan prosedur tersimpan, anda boleh menggunakan kenyataan CREATE EVENT.

Menjadualkan Prosedur Tersimpan untuk Memadam Data Lama

Pertimbangkan prosedur tersimpan berikut (delete_rows_links) yang memadamkan pautan pengaktifan yang lebih lama daripada satu hari:

<code class="sql">DROP PROCEDURE IF EXISTS `delete_rows_links` 
GO

CREATE PROCEDURE delete_rows_links
BEGIN 

    DELETE activation_link
    FROM activation_link_password_reset
    WHERE  TIMESTAMPDIFF(DAY, `time`, NOW()) < 1 ; 

END 

GO</code>

Untuk menjadualkan prosedur tersimpan ini dijalankan setiap 5 saat, anda boleh menggunakan kenyataan CREATE EVENT berikut:

<code class="sql">CREATE EVENT myevent
    ON SCHEDULE EVERY 5 SECOND
    DO
      CALL delete_rows_links();</code>

Acara ini akan menyebabkan prosedur tersimpan delete_rows_links dilaksanakan setiap 5 saat. Anda boleh mendapatkan lebih banyak contoh penjadualan acara dalam dokumentasi MySQL: http://dev.mysql.com/doc/refman/5.1/en/create-event.html

Atas ialah kandungan terperinci Bagaimana untuk Menjadualkan Prosedur Tersimpan untuk Berjalan Secara Berkala dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn