یک محرک پایگاه داده (رهانای پایگاه داده) (به انگلیسی: database trigger) نوعی کد رویهای است، که در جواب به یک رویداد (مثلا درج(Insert)، حذف(Delete) یا بهروزرسانی(Update)) روی یک جدول یا دید در یک پایگاه داده، «به صورت خودکار» اجرا می گردد. [۱]
هدف از محرکها آن است که در یک پایگاه داده نگهداری و یکپارچگی را برای اطلاعات فراهم کند.[۱] هر جدول یا دید میتواند چند محرک داشته باشد.
مثال
زمانیکه یک رکورد جدید (نمایش دهنده یک کارگر جدید) به جدول کارمندان اضافه میشود، باید رکوردهای جدیدی در جداول مالیات، مرخصی، و حقوق ایجاد گردد. این کار از طریق محرکها قابل انجام است.[۱]
همچنین از محرکها برای گزارش (لاگ) گرفتن از دادههای تاریخی استفاده میشود، برای مثال از آن میتوان برای نگهداری رد توالی حقوق قبلی یک کارمند استفاده کرد.[۱]
موارد استفاده محرکها
از موارد مورد استفاده محرکها میتوان به موارد زیر اشاره کرد:
- محاسبه مقدار فیلدهای مشتق شده به صورت خودکار،
- جلوگیری از تراکنشهای نامعتبر،
- اعمال منطق اجازهدهی پیچید،
- اعمال یکپارچگی داده در پایگاه داده توزیع شده،
- اعمال قواعد کسبوکار پیچیده،
- ثبت وقایع (logging)،
- نظارت پیچیده،
- یکسان نگه داشتن انعکاسهای (replicate) جدول،
- گردآوری آمار
پانویس