Recurring Schedules EVERY Intervalجدولة المهام الدورية للتنظيف
تعلّم المشغلات التلقائية Triggers والأحداث المجدولة Events في MySQL بأسلوب MySQL 8 الحديث مع أمثلة استعلامات SQL وتطبيقات تفاعلية.
1 صفوف تعليمية
MySQL
7 مشاهدة
شرح صفوف ومحتوى الفقرة
الصف 1
شرح توضيحي
الاستخدام الأكثر شيوعاً للأحداث في الأنظمة الإنتاجية هو أتمتة المهام الدورية المتكررة (Recurring Events) باستخدام الصيغة ON SCHEDULE EVERY n unit (مثل EVERY 1 DAY أو EVERY 15 MINUTE). يمكنك أيضاً تقييد فترة سريان التكرار بتحديد وقت البداية STARTS timestamp ووقت النهاية ENDS timestamp.
كما يمكنك إيقاف حدث دوري مؤقتاً دون حذفه عبر الأمر ALTER EVENT ev_name DISABLE; ثم إعادة تفعيله لاحقاً بـ ENABLE، واستعراض جميع المشغلات والأحداث المسجلة عبر SHOW TRIGGERS وSHOW EVENTS، وحذف ما انتهت الحاجة إليه بأمان عبر DROP TRIGGER IF EXISTS وDROP EVENT IF EXISTS.
</>SQL
CREATE EVENT ev_daily_token_cleanup
ON SCHEDULE EVERY 1 DAY
STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR
DO
DELETE FROM auth_tokens
WHERE expires_at < CURRENT_TIMESTAMP - INTERVAL 7 DAY;
SHOW EVENTS LIKE 'ev_%';
DROP TRIGGER IF EXISTS trg_customers_before_insert;
DROP EVENT IF EXISTS ev_close_promo_campaign;
جميع فقرات هذا الدرس (المشغلات التلقائية Triggers والأحداث المجدولة Events في MySQL)