CodeBlanks Logo Icon CodeBlanks

UPDATE trigger

UPDATE sonrası tetiklenmeyi öğrenirsin.

UPDATE trigger

UPDATE trigger satır güncellendiğinde çalışır. OLD ve NEW erişilebilir.

CREATE TRIGGER log_change
AFTER UPDATE ON products
FOR EACH ROW
BEGIN
  INSERT INTO log VALUES (OLD.name, NEW.name);
END;

Bu sorgu eski ve yeni adı loglar.

log_change tetikleyicisi oluşturulur.

UPDATE trigger — ayrıntı

UPDATE trigger'da hem OLD hem NEW kullanılır. Değişimi izlemek için idealdir.

Örneğin OLD.price ile NEW.price farklıysa fiyat değişikliğini bir geçmiş tablosuna eski ve yeni değerle kaydedersin.

Uygulama UPDATE trigger

Bir AFTER UPDATE trigger'ı yaz: OLD.name ve NEW.name değerlerini logla.

Başlangıç kodu

query.sql
-- update trigger
CREATE TRIGGER log_change

Örnek çözüm

query.sql
CREATE TRIGGER log_change
AFTER UPDATE ON products
FOR EACH ROW
BEGIN
  INSERT INTO log VALUES (OLD.name, NEW.name);
END

Beklenen çıktı

Trigger oluşturuldu

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 UPDATE trigger'da ne erişilebilir?

  • Yalnız NEW
  • OLD ve NEW Doğru cevap
  • NONE
  • Yalnız OLD

Açıklama: UPDATE trigger'da OLD ve NEW erişilebilir.

2 OLD ekle

Soru
  INSERT INTO log VALUES (____.name, NEW.name);
Cevap
  INSERT INTO log VALUES (OLD.name, NEW.name);

Açıklama: OLD satırın değişiklikten önceki değerini, NEW sonraki değerini verir.

3 UPDATE trigger: kavramları eşleştir

Kavram Anlamı
UPDATE güncelleme
OLD eski değer
NEW yeni değer
değişim fark

İleri seviye bölümündeki tüm dersler