মূলত MySQL ট্রিগার হলো ডাটাবেস ক্যাটালогаয় সংরক্ষিত স্টেটমেন্টের একটি সেট। এই ডাটাবেস অবজেক্টটি সবসময় একটি টেবিলের সাথে যুক্ত থাকে যা সেই টেবিলের জন্য নির্দিষ্ট ধরনের ইভেন্ট ঘটলে এক্টিভেট হতে ডিফাইন করা থাকে। অন্য দিক থেকে বললে MySQL ট্রিগার হলো স্টোরড প্রোসিজারর এক বিশেষ ধরন। এর মূল পার্থক্য স্টোরড প্রোসিজারর সাথে হলো এটি সরাসরি কল করা হয় না। টেবিলের ওপর ডেটা মডিফিকেশন ইভেন্ট ঘটলে এটি স্বয়ংক্রিয়ভাবে কল হয়। টেবিলের ওপর নিচের MySQL স্টেটমেন্টগুলো চালালে ট্রিগার এক্সিকিউট হতে পারে: INSERT, UPDATE, এবং DELETE এবং এটি ইভেন্টের পূর্বে বা পরে আহ্বান হতে পারে। ট্রিগার ব্যবহারকারী যেনা জানতে পারেনা শান্তভাবে এক্সিকিউট হয়। এগুলো COMMIT বা ROLLBACK স্টেটমেন্ট অন্তর্ভুক্ত করতে পারে না।
ট্রিগারিং ইভেন্টগুলো মূলত অ্যাকশনের টাইমিং যাইত্রিগার এক্টিভেট হবে। MySQL ট্রিগারের সাথে সম্পর্কিত ট্রিগারিং ইভেন্টগুলো নিচে দেওয়া হলো:
- INSERT — নাম অনুযায়ী, এটি MySQL টেবিলে ডেটা ইনসারশন-सम्बন্ধীয় ট্রিগার ইভেন্ট নির্দেশ করে। এই কেসে ট্রিগার ডেটা ইনসারশনের পূর্বে বা পরে ট্রিগার হবে।
- DELETE — নাম অনুযায়ী, এটি MySQL টেবিলে ডেটা ডিলিশন-सम्बন্ধীয় ট্রিগার ইভেন্ট নির্দেশ করে। এই কেসে ট্রিগার ডেটা ডিলিশনের পূর্বে বা পরে ট্রিগার হবে।
- UPDATE — নাম অনুযায়ী, এটি MySQL টেবিলে ডেটা আপডেশন-सംബন্ধীয় ট্রিগার ইভেন্ট নির্দেশ করে। এই কেসে ট্রিগার ডেটা আপডেশনের পূর্বে বা পরে ট্রিগার হবে।