2015-07-13 3 views
3

Я довольно новичок в phpmyadmin и SQL-базах данных.сброс значений столбцов после времени

Я хотел бы знать, как я могу добавить «скрипт», который сбрасывает значение во всех столбцах таблицы после определенного периода времени -> Мне нужно, чтобы столбец устанавливал значение int равным 0 каждые 72 часа для каждой строки , Это возможно и как?

ответ

2

То, что вы хотите, называется «событием». Вот потенциальное определение; ваши потребности могут отличаться.

CREATE EVENT `zero_my_column` 
    ON SCHEDULE 
     EVERY 72 HOUR STARTS '2015-07-13 00:00:00' 
    ON COMPLETION PRESERVE 
    ENABLE 
DO BEGIN 
     UPDATE mytable SET counter = 0 WHERE counter <> 0; 
END 

Там какая-то configuration work to do, чтобы обеспечить ваш сервер MySQL будет корректно работать это событие.

Это фактический запрос на обновление.

UPDATE mytable SET counter = 0 WHERE counter <> 0; 

Обратите внимание на статью WHERE. Это предотвращает избыточное обновление строк, которые уже имеют нулевое значение столбца для counter.

+0

спасибо большое, это сработало! – Brinkhoff

+0

В StackOverflow лучше всего отметить ответ «Принято» (нажмите зеленую проверку), если это поможет. Таким образом, другие с похожими вопросами могут найти ваш вопрос и ответ. –

+1

Поскольку вы упоминаете использование phpMyAdmin, вас может заинтересовать вкладка «События», которую вы можете увидеть на любой странице базы данных. –

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