Heim >Datenbank >MySQL-Tutorial >Wie plane ich die regelmäßige Ausführung einer gespeicherten Prozedur in MySQL?

Wie plane ich die regelmäßige Ausführung einer gespeicherten Prozedur in MySQL?

Susan Sarandon
Susan SarandonOriginal
2024-11-04 08:39:30292Durchsuche

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

So planen Sie eine Routine in MySQL

MySQL ermöglicht Ihnen, gespeicherte Prozeduren so zu planen, dass sie in bestimmten Intervallen ausgeführt werden. Dies kann nützlich sein, um Aufgaben wie die Datenbereinigung oder regelmäßige Berichte zu automatisieren. Um eine gespeicherte Prozedur zu planen, können Sie die CREATE EVENT-Anweisung verwenden.

Planen einer gespeicherten Prozedur zum Löschen alter Daten

Betrachten Sie die folgende gespeicherte Prozedur (delete_rows_links), die löscht Aktivierungslinks, die älter als einen Tag sind:

<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>

Um diese gespeicherte Prozedur so zu planen, dass sie alle 5 Sekunden ausgeführt wird, müssen Sie kann die folgende CREATE EVENT-Anweisung verwenden:

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

Dieses Ereignis führt dazu, dass die gespeicherte Prozedur delete_rows_links alle 5 Sekunden ausgeführt wird. Weitere Beispiele für die Ereignisplanung finden Sie in der MySQL-Dokumentation: http://dev.mysql.com/doc/refman/5.1/en/create-event.html

Das obige ist der detaillierte Inhalt vonWie plane ich die regelmäßige Ausführung einer gespeicherten Prozedur in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn