Constraint yönetimi
- SQL kursu
- Başlangıç
- Ders 99/115
- 4 dk
Constraint eklemeyi ve kaldırmayı öğrenirsin.
ON DELETE ve ON UPDATE
ON DELETE ve ON UPDATE ile FOREIGN KEY davranışını belirlersin. CASCADE, SET NULL, RESTRICT seçenekleri var.
FOREIGN KEY (customer_id) REFERENCES customers(id)
ON DELETE CASCADEBu sorgu müşteri silinince siparişleri de silinir.
ON DELETE ve ON UPDATE — ayrıntı
CASCADE bağlı satırları da siler/günceller. SET NULL bağlı sütunu boş yapar. RESTRICT silmeyi engeller. Varsayılan RESTRICT'tir.
Uygulama ON DELETE ve ON UPDATE
orders tablosuna customer_id FOREIGN KEY REFERENCES customers(id) ON DELETE CASCADE ekle.
Başlangıç kodu
-- ilişki ekle
CREATE TABLE orders (
id INT PRIMARY KEY,
customer_id INT,Örnek çözüm
CREATE TABLE orders (
id INT PRIMARY KEY,
customer_id INT,
FOREIGN KEY (customer_id) REFERENCES customers(id) ON DELETE CASCADE
)Beklenen çıktı
Tablo oluşturuldu
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Yayılım
FOREIGN KEY (cid) REFERENCES c(id) ON DELETE ____;
FOREIGN KEY (cid) REFERENCES c(id) ON DELETE CASCADE;
Açıklama: CASCADE doğru cevap.
2 Constraint yönetimi: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
CASCADE |
yay |
SET NULL |
boş |
RESTRICT |
engelle |
FOREIGN KEY |
ilişki |
3 ON DELETE CASCADE ne yapar?
- Bağlı satırları boşaltır
- Bağlı satırları da siler Doğru cevap
- Bağlı satırları korur
- Hiçbir şey
Açıklama: CASCADE bağlı satırları da siler.