首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL Event 定時任務實戰:創建存儲過程 + 排程事件每 30 秒自動更新

     編輯:MySQL 資料庫相關知識

1. 建庫建表

CREATE DATABASE test1;
USE test1;
CREATE TABLE examinfo (id INT AUTO_INCREMENT PRIMARY KEY, endtime DATETIME);
INSERT INTO examinfo VALUES (1, '2011-04-23 23:26:50');

2. 創建存儲過程

CREATE PROCEDURE test()
BEGIN
  UPDATE examinfo SET endtime = NOW() WHERE id = 1;
END;

3. 創建 Event

CREATE EVENT IF NOT EXISTS e_test
ON SCHEDULE EVERY 30 SECOND
ON COMPLETION PRESERVE
DO CALL test();

4. 啟用/控制事件調度器

-- 查看狀態
SHOW VARIABLES LIKE '%sche%';
-- 啟用
SET GLOBAL event_scheduler = 1;
-- 禁用事件
ALTER EVENT e_test ON COMPLETION PRESERVE DISABLE;
-- 啟用事件
ALTER EVENT e_test ON COMPLETION PRESERVE ENABLE;

5. 驗證

等待片刻查詢 examinfo 表,endtime 會每 30 秒自動刷新為當前時間。

初始數據 更新後數據

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved