Sobes.tech
Junior

Trigger nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Trigger, verilən hadisə baş verdikdə avtomatik olaraq icra olunan xüsusi yadda saxlanmış prosedurdur.

Triggerləri işə salan hadisələr adətən aşağıdakılardır:

  • INSERT: cədvələ yeni sətirlər əlavə etmək.
  • UPDATE: mövcud sətirləri dəyişdirmək.
  • DELETE: sətirləri cədvəldən silmək.

Triggerlər hadisədən əvvəl və sonra müxtəlif vaxtlarda işə sala bilər:

  • BEFORE: hadisə baş verməzdən əvvəl.
  • AFTER: hadisə baş verdikdən sonra.
  • INSTEAD OF: hadisənin yerinə (tez-tez görünüşlərlə istifadə olunur).

Triggerlərin istifadəsinə nümunələr:

  1. Məlumatların bütövlüyünü təmin etmək: əlavə və ya yeniləmə zamanı avtomatik yoxlama və ya dəyişiklik.
  2. Audit: məlumat dəyişiklikləri haqqında məlumatların ayrıca log cədvəlinə qeydiyyatı.
  3. Məlumatların sinxronizasiyası: əlaqəli cədvəllərin avtomatik yenilənməsi.
  4. Mürəkkəb biznes qaydalarının icrası: müəyyən şərtlər altında əlavə tədbirlərin başlanması.

Triggerlər cədvəl səviyyəsində müəyyən edilir və dəyişdirilən sətirin köhnə və yeni dəyərlərinə istinad edə bilər.

-- Sintaksis nümunəsi (SQL)
CREATE TRIGGER audit_log
AFTER INSERT ON users
FOR EACH ROW
BEGIN
    INSERT INTO audit (user_id, action, timestamp)
    VALUES (NEW.id, 'insert', NOW());
END;

Triggerlərdən ehtiyatla istifadə etmək vacibdir, çünki onlar debugging-i çətinləşdirə və verilənlər bazasının performansına təsir göstərə bilər.