2013-08-13 2 views
0

Просто хотел спросить, работает ли этот планировщик событий, также если он был запущен, он будет продолжать работать до тех пор, пока mySQL работает как служба?Удалить запись с помощью планировщика событий

SET GLOBAL event_scheduler = ON; 

    CREATE EVENT deleteVistors 
    ON SCHEDULE EVERY 1 DAY STARTS'2013-08-13 04:00:00' 
    DO 
    DELETE FROM tblwhitelist WHERE description = 'Vistors'; 

Также для этого нужен разделитель? Я до сих пор не уверен, что это на самом деле!

Надеюсь, вы сможете помочь!

+0

проверьте это http://dev.mysql.com/doc/refman/5.1/en/events-configuration.html. вы не можете включить event_scheduler, если он отключен в основной конфигурации. вы должны проверить SHOW FULL PROCESSLIST, чтобы проверить, работает ли поток планировщика событий. –

+0

Если я запустил этот планировщик событий, он активирует его, верно? Ive установил его на 5 минут, и он отлично работает. Так что мне нужно добавить событие в основную конфигурацию? мой-default.ini? –

ответ

2

http://dev.mysql.com/doc/refman/5.1/en/create-event.html

Не использование ENDS означает, что событие продолжается до бесконечности выполнения.

CREATE EVENT deleteVistors 
    ON SCHEDULE EVERY 1 DAY STARTS '2013-08-13 04:00:00' 
    -- !!! no *END*: will continue until you explicitly drop the event 
    DO 
    DELETE FROM tblwhitelist WHERE description = 'Vistors'; 

Что касается второго вопроса:

Также будет это нужно разделитель?

MySQL использует разделительную колонку в виде двоеточия. Для многострочных операторов (BEGIN ... END и т. Д.) Это может ввести в заблуждение для вашего клиента MySQL, поскольку ; может появиться внутри этих многострочных операторов.

У вас есть только ;, так что вам не нужно беспокоиться об этом.

+0

Хорошо спасибо! В принципе, мы не хотим, чтобы событие закончилось. Это все еще уместно? –

Смежные вопросы