Sql Server Veri Silme

Herkese merhaba, Sql Server yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda Sql Server’da bir tablodan veri silmeyi anlatacağım. Hadi başlayalım !
Sql Server’da herhangi bir tablodan veri silmek için kullanmamız gereken komut yapısı şu şekilde;
delete from tablo_adı [where koşul]
Bu kod yapısında tablo_adı yazan yere veri silmek istediğiniz tablonun adını yazmalısınız ve [where koşul] kısmını yazmak zorunlu değil. Eğer yazmazsanız tablodaki tüm verileri siler fakat yazarsanız yazdığınız koşula göre sağlayan verileri silecektir. where koşulu ile yazabileceğiniz şartların neredeyse sınırı yok. Örneğin sayısal veri tutan bir sütuna göre, o sütundaki verilerden 6’dan küçük olanları, karesinin küp kökü 10’dan büyük olanları, ilk harfi a son harfi b olanları, ilk harfi a olup son harfi b olmayanları, ilgili bir karakterin bir kere geçtiği verileri, karesinin küp kökünün 5’te 1’inin %10’u 8’e eşit olanları vs gibi gerek matematiksel gerekse matematiksel olmayan yüzlerce hatta binlerce koşul yazabilirsiniz. Tabi siz hepsini yazmayacaksınız, ihtiyacınız olanları yazacaksınız 🙂
Ayrıca where koşulunda hem Sql Server’in kendi fonksiyonlarını, hemde sizin yazdığınız fonksiyonları çağırarakta kısıtlama yapabilirsiniz. Sql Server’in kendi fonksiyonlarını ve kendi fonksiyonumuzu yazmayı ilerleyen yazılarda ekleyeceğim fakat şimdilik basit filtrelemeler yaparak silme işlemini yapalım.
Örneğin kitaplar adında bir tablomuz ve bu tabloda varchar tipte kitapAdi, int tipte basimYili ve int tipte sayfaSayisi sütunları olsun. Sırasıyla basimYili değeri 2000’den önce olanları, sayfaSayisi değeri 50’den büyük olanları, adı Sefiller olmayanları ve son olarakta tablodaki tüm verileri silelim.
delete from kitaplar where basimYili < 2000;
delete from kitaplar where sayfaSayisi > 50;
delete from kitaplar where kitapAdi != 'Sefiller';
delete from kitaplar;
4 satır kod yazdık ve ilk satırda basimYili değerinin 2000’den küçük olanları yani bir başka deyişle 2000’den önce basılmış kitapları, ikinci satırda 50 sayfadan daha büyük olanları, üçüncü satırda adı Sefiller olan kitapları ve son satırda ise tüm kitapları sildik. Gördüğünüz gibi son satırda where ifadesi yok ve bu yüzden tüm veriler herhangi bir koşula bağlı kalınmaksızın silindi. Burada da gördüğünüz gibi koşul yazmak için <, > ve != gibi matematiksel işaretleri kullandık. Zaten Sql Server’da koşullarda tamamen matematiksel ifadelere bağlı. Eşit değildir işareti (≠) için ayrıca bir işaret olmadığı ve klavyede bu işareti yapmak biraz zor olduğundan dolayı != gibi bir belirteç belirlenmiş. Ayrıca != yerine <> belirteci koyarakta eşit değildir koşulu yazabilirsiniz.
Sql Server’da veri işlemi bu kadar fakat dediğim gibi koşullar bu kadar basit değil. Sadece Sql Server’in kendi fonksiyonlarını benim yazmam ve sizin öğrenmeniz çok uzun zaman alabilir. Onları da zamanla yazacağım ve anlatacağım. Tüm Sql Server yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.