Tablo üzerinde kayıt silme

Tablolar üzerinde zaman zaman kayıt silme işlemleri gerçekleştirmemiz gerekebilir.
Bu durumda Delete komutu sıklıkla kullanılır. Kayıtlar select komutundaki gibi seçilir.

Select * from dbo.Musteri where MusteriTipi='Perakende'
Yukarıdaki gibi Musteri tablosunda tipi perakende olan kayıtları seçebildiğimiz gibi bu kayıtları Delete komutuyla silebiliriz.

DELETE from dbo.Musteri where MusteriTipi='Perakende'
Burada herhangi bir alan belirtilmez çünkü satır olarak silinmektedir.

Bu komutun dikkatli kullanılması gerekir çünkü özel bir durum olmadıkça kayıtlar kalıcı olarak silinir.
Kayıt silme işlemi kayıt sayısına göre zaman alabilmektedir.
Eğer çok kayıt olan bir tablodaki tüm kayıtları silerek tabloyu tamamen boşaltmak isteniyorsanız delete komutu yerine truncate table komutunu tavsiye ederim.
örneğin 1 milyon kayıt olan bir müşteri tablosunu
DELETE FROM MUSTERI yerine
TRUNCATE TABLE MUSTERI komutu ile çok daha hızlı silebilirsiniz. Ancak bu komut koşul almadan tüm tabloyu silmektedir.

Ayrıca bazı durumlarda kayıtları silmeden sadece belli kolonların topluca temizlenmesine ihtiyaç duyulabilir.
Bu tip durumlarda da Update komutundan yararlanabilirsiniz.
Update MUSTERI SET BekleyenSiparis=0 where BolgeKodu='34'
Yani Musteri tablosundaki bölge kodu 34 olan kayıtların bekleyen siparişlerini sıfırla anlamındadır.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir