MySQL ইভেন্ট হলো একটি টাস্ক যা প্রিডিফাইনড শিডিউল অনুযায়ী রান করে, তাই কখনো কখনো এটাকে শিডিউল্ড ইভেন্টও বলা হয়। অন্য কথায়, MySQL ইভেন্ট শিডিউলার হলো একটি ব্যাকগ্রাউন্ড প্রসেস যা কনস্ট্যান্টলি ইভেন্ট খুঁজে এক্সিকিউট করে। এটাকে টেম্পোরাল ট্রিগারও বলা হয় কারণ এটি সময় দ্বারা ট্রিগার হয়, টেবিল আপডেটের মত ট্রিগারের মত নয়। ইভেন্ট একবার বা রিকারিং ইন্টারভালে রান করতে পারে। এটি ব্যাকআপ তৈরি, পুরনো রেকর্ড ডিলিট, রিপোর্টের জন্য ডেটা অ্যাগ্রিগেট ইত্যাদিতে ব্যবহার করা যায়। এর সিনট্যাক্স:
সিনট্যাক্স
CREATE EVENT event_name ON SCHEDULE schedule DO Event_body
এখানে,
- event_name হলো ইভেন্টের নাম, CREATE EVENT স্টেটমেন্টের পরে স্পেসিফাই করতে হয়। একটি ডাটাবেসে এটি ইউনিক হতে হবে।
- schedule হলো সময় যা স্পেসিফাই করতে হয় যাতে ইভেন্ট নির্দিষ্ট সময়ে বা শিডিউলে ঘটে। ইভেন্ট ওয়ান-টাইম বা রিকারিং হতে পারে।
- Event_body হলো SQL স্টেটমেন্টের সেট যা DO কীওয়ার্ডের পরে স্পেসিফাই করতে হয়। একাধিক স্টেটমেন্ট থাকলে BEGIN…END ব্লকে র্যাপ করা যায়।