SQL · 6/8
Kayıt silme: DELETE
Tablodaki gereksiz veya silinmesi istenen satırları DELETE FROM ile kontrollü şekilde kaldırmak.
Önerilen çalışma: 25–45 dakika; örnekleri kendin uygula. Süre kişiye göre değişir.
Bu sayfada · 9 başlık
Başlamadan önce
Önceki dersteki örneği çalıştırmış olman ve dosya/çıktı ayrımını biliyor olman yararlı.
Öğrenme sırası: konuyu oku → çıktıyı tahmin et → örneği değiştir → alıştırmayı çöz → cevabını gerekçelendir.

Videoyla adım adım izle
Türkçe açıklamalı sessiz görsel anlatım. Sesli ders veya kesintisiz ekran kaydı değildir. Duraklatıp kendi ortamında uygula.
Video bölümleri ve tam metin
Kayıt silme: DELETE
Tablodaki gereksiz veya silinmesi istenen satırları DELETE FROM ile kontrollü şekilde kaldırmak.
Kavramı kur
Veritabanında artık ihtiyaç duyulmayan kayıtları silmek için DELETE FROM kullanılır. Bu komut belirtilen tablodan satırları kalıcı olarak kaldırır.
Neden böyle çalışıyor?
Tıpkı UPDATE gibi DELETE komutunda da WHERE koşulu hayati önem taşır. WHERE yazmadan DELETE FROM calisanlar; yazarsan tablodaki tüm satırlar silinir ve tablo bomboş kalır!
Çalışma sırası
DELETE satırları siler; tablonun kendisi, sütun yapısı ve ayarları korunur. Tabloyu tamamen sistemden yok etmek için DROP TABLE kullanılır.
İkinci örnek · 1
DELETE FROM calisanlar tablodan satır silineceğini belirtir. Kodun tamamı yazılı derste bulunur.
Kod
DELETE FROM calisanlar
WHERE id = 3;Beklenen sonucu oku
Silinen satır sayısı sonuç olarak döner.
Beklenen çıktı: 1 satır silindi.
Bir değeri sen değiştir
Bölümü 'Stajyer' olan tüm çalışanları silen bir sorgu yaz. Silme sorgusu yazmadan önce aynı koşulu SELECT ile çalıştırıp hangi satırların silineceğini önceden gör.
Hata nereden gelir?
WHERE koşulunu yazmayı unutmak tüm tabloyu boşaltır.
Kendi çözümünü kur
Belirli bir tarihten eski kayıtları silmek için büyüktür/küçüktür işleci kullan. Güvenlik kuralı: DELETE yazmadan önce SELECT * FROM calisanlar WHERE ... ile silinecekleri listele.
Çözüm varyasyonu · 1
Önce kendi denemeni yap; sonra bu varyasyonun girdileri ile sonucunu karşılaştır.
Kod
DELETE FROM calisanlar
WHERE bolum = 'Stajyer';Kendini kontrol et
DELETE FROM tablo; ile DROP TABLE tablo; arasındaki temel fark nedir? Yanıt: DELETE satırları silip tablo yapısını korur; DROP ise tablonun yapısını tamamen yok eder.
Beklenen çıktı: 1 satır silindi.
Konu anlatımı
Veritabanında artık ihtiyaç duyulmayan kayıtları silmek için DELETE FROM kullanılır. Bu komut belirtilen tablodan satırları kalıcı olarak kaldırır.
Tıpkı UPDATE gibi DELETE komutunda da WHERE koşulu hayati önem taşır. WHERE yazmadan DELETE FROM calisanlar; yazarsan tablodaki tüm satırlar silinir ve tablo bomboş kalır!
DELETE satırları siler; tablonun kendisi, sütun yapısı ve ayarları korunur. Tabloyu tamamen sistemden yok etmek için DROP TABLE kullanılır.
İlk örneği oku ve dene
Kayıt silme: DELETE
DELETE FROM ile belirli koşula uyan satırları sileriz. WHERE unutulursa tablodaki tüm veriler silinir.
DELETE FROM calisanlar
WHERE id = 3;
▶ Sonuç
1 satır silindi.
Adım adım neden böyle çalışıyor?
- DELETE FROM calisanlar tablodan satır silineceğini belirtir.
- WHERE id = 3 silinecek satırın kimliğini sınırlandırır.
- Motor id değeri 3 olan satırı bulur ve tablodan kaldırır.
- Silinen satır sayısı sonuç olarak döner.
İkinci çözümlü örnek
Tablodaki gereksiz veya silinmesi istenen satırları DELETE FROM ile kontrollü şekilde kaldırmak.
DELETE FROM calisanlar
WHERE id = 3;
▶ Sonuç
1 satır silindi.
Kolaydan zora sen dene
- Bölümü 'Stajyer' olan tüm çalışanları silen bir sorgu yaz.
- Silme sorgusu yazmadan önce aynı koşulu SELECT ile çalıştırıp hangi satırların silineceğini önceden gör.
- Belirli bir tarihten eski kayıtları silmek için büyüktür/küçüktür işleci kullan.
İpucunu aç
Güvenlik kuralı: DELETE yazmadan önce SELECT * FROM calisanlar WHERE ... ile silinecekleri listele.
Üç görevin açıklamalı çözümünü oku
- DELETE FROM calisanlar WHERE bolum = 'Stajyer'; şartı sağlayanları siler.
- Silmeden önce SELECT * FROM calisanlar WHERE ... ile silinecek satırlar teyit edilmelidir.
- WHERE tarih < '2026-01-01' ile eski kayıtlar güvenle kaldırılır.
Bir çözüm varyasyonu gör
Çözüm varyasyonu
Önce kendi görevlerini dene. Bu varyasyonda girdi ve sonuçları karşılaştır.
DELETE FROM calisanlar
WHERE bolum = 'Stajyer';
▶ Sonuç
1 satır silindi.
Yaygın hata ve çözümü
- WHERE koşulunu yazmayı unutmak tüm tabloyu boşaltır.
- Tabloyu tamamen silmek istediğinde DELETE yerine DROP TABLE kullanılmalıdır; ikisini karıştırma.
Kendini değerlendir
Ezberlemeden açıklayabiliyor musun?
DELETE FROM tablo; ile DROP TABLE tablo; arasındaki temel fark nedir?
Açıklamalı yanıt
DELETE satırları silip tablo yapısını korur; DROP ise tablonun yapısını tamamen yok eder.
Kendi çözümünde bir girdiyi değiştir. Çalıştırmadan önce beklenen sonucu yaz; gerçek sonuçla karşılaştır ve fark varsa hangi satırdan kaynaklandığını açıkla.
Kaynak ve çalışma ortamı
Örnekler küçük öğretim senaryolarıdır. Java/C#/PHP/Swift çalışma ortamını kendi cihazında ayrıca doğrula; yazılı sonuçlar beklenen davranışı açıklar.
Resmî dil belgeleriBu içerik işine yaradı mı?
Görüşünü aşağıdan işaretleyebilir ve varsa notunu bırakabilirsin.