mysql event 简单demo
生活随笔
收集整理的這篇文章主要介紹了
mysql event 简单demo
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
功能:每3秒刪除b表數據,查詢a表中的5條數據并插入b表。
/* 查看mysql事件狀態 */ show variables like '%event_scheduler%';/* 開啟mysql事件 */ SET GLOBAL event_scheduler = ON;/* 測試a表*/ CREATE TABLE `test_a` (`id` int(11) NOT NULL AUTO_INCREMENT,`score_value` int(11) NOT NULL DEFAULT '0',PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;/* 測試b表*/ CREATE TABLE `test_b` (`id` int(11) NOT NULL AUTO_INCREMENT,`score_value` int(11) NOT NULL DEFAULT '0',PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;/* 創建事件 */ CREATE EVENT IF NOT EXISTS event_test /* 事件每三秒執行一次,也可以設置分minute或hour */ ON SCHEDULE EVERY 3 SECOND ON COMPLETION PRESERVE /* 使用proc_test存儲過程 */ DO CALL proc_test(); ? ?/* 創建proc_test存儲過程 */ ? ? DELIMITER //? CREATE PROCEDURE proc_test()? BEGIN? /* 刪除test_b表數據 */ ? ? TRUNCATE TABLE test_b; /* 1.查詢test_a表數據,2.插入到test_b表 注意插入的數據中不能有id主鍵*/ ? ? INSERT into test_b(score_value)select score_value from test_a where score_value = 5730 order by id desc limit 5; END? //? DELIMITER ;/* 查看存儲過程 */ ? ? show procedure status; /* 查看事件 */ ? ? show events /* 刪除事件 */ ? ? drop event event_test /* 刪除存儲過程 */ ? ? drop procedure proc_test?
總結
以上是生活随笔為你收集整理的mysql event 简单demo的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: InputStream 、 InputS
- 下一篇: java8中LocalDate、Loca