Saya yakin Anda memikirkan ini ke arah yang berlawanan:Anda tidak dapat membuat acara dalam prosedur tersimpan, tetapi Anda bisa buat prosedur tersimpan dan panggil dari sebuah acara.
Contoh:
delimiter $$
create procedure myProc()
-- Dummy procedure to move the data from mainTable to backupTable,
-- and then clear (truncate) mainTable
begin
insert into backupTable select * from mainTable;
truncate mainTable;
end $$
delimiter ;
-- Now, suposing that you want to execute this procedure every hour:
delimiter $$
create event myEvent
on schedule every 1 hour
do
begin
call myProc();
end $$
delimiter ;
Anda dapat menulis ini sebagai kueri lainnya di meja kerja, atau langsung di klien baris perintah.
Tentang kekhawatiran Anda
Setelah membaca komentar Anda, saya yakin Anda sedikit bingung tentang apa itu MySQL Workbench.
MySQL Workbench hanya aplikasi grafis yang memungkinkan Anda terhubung ke server MySQL dan melakukan kueri dan tugas administrasi. Tapi Workbench tidak inti dari MySQL... ini hanya sebuah viewer (dengan steroid, mungkin, tapi bagaimanapun juga viewer).
Sekarang, penjadwal acara tidak berada di Workbench, tetapi di instance server MySQL yang Anda sambungkan. Sama seperti tabel, tampilan, prosedur, dan fungsi yang tidak disimpan di antarmuka Workbench tetapi di server, kejadian juga disimpan di server.
(Ya, saya percaya ini adalah SNAFU yang relevan sehingga acara terjadwal tidak ditampilkan di mana pun di antarmuka grafis, tapi... setelah beberapa saat, seseorang belajar untuk hidup dengan frustrasi semacam itu dan melanjutkan hidup)
Mungkin satu-satunya kekhawatiran Anda adalah:"Hei, dan bagaimana jika saya ingin tahu acara apa yang diatur untuk dijalankan di penjadwal acara?" Anda dapat menjalankan kueri "tampilkan acara" untuk menampilkan daftar acara di database saat ini, dan Anda dapat menjalankan "tampilkan buat acara acara Anda" untuk menampilkan create event
sintaks untuk acara itu.
Saya bersikeras:Baca manual, dan simpan salinannya (unduh manual untuk versi MySQL Anda di sini ).