Kayıt Silme
Bir tabloda bulunan bir yada daha fazla satır silinebilmektedir. Silme işlemi için DELETE deyimi kullanılmaktadır. Bu deyimin genel yapısı şu şekildedir.
DELETE FROM tablo_adı
WHERE koşul
Bir tabloda bütün kayıtlar silinebileceği gibi belli bir şartı sağlayan herhangi bir kayıtta silinebilmektedir. Örneğin daha önce oluşturduğumuz «secilenmüsteri» tablosunun tüm kayıtlarını silmek için şöyle bir SQL ifadesi yazılacaktır.
DELETE FROM secilenMüsteri
Herhangi bir koşul olmadığı için bütün kayıtlar silinecektir.
Şimdi de belli bir şarta sahip kayıtları silmek için bir örnek verelim. Müşteriler tablosunda “Ali Arslan” isimli müşteri ile artık çalışmadığımızı düşünerek bu müşteriyi tamamen silelim. SQL ifademiz şöyle olacaktır.
DELETE FROM musteriler
WHERE (adi='Ali' AND soyadi='Arslan')
Aynı şekilde bir tabloda istenilen şartı sağlayan birden fazla kayıtta silinebilmektedir. Örneğin Müşteriler tablosunda Ankara ‘da oturan bütün müşterileri silmek istersek SQL ifademiz aşağıdaki gibi olacaktır.
DELETE FROM musteriler
WHERE il ='Ankara'
DELETE komutunda da tıpkı INSERT INTO ve UPDATE komutlarında olduğu gibi alt sorgular kullanılarak da kayıtlar silinebilmektedir. Bu noktada yine SELECT ifadesinden yararlanılmaktadır.
Örneğin; personel tablosunda İMALAT bölümüne ait bütün kayıtları silmek istiyoruz. Bu işlemi gerçekleştiren SQL ifadesi şöyle olacaktır:
DELETE FROM personel
WHERE bolumID = (SELECT bolumID
FROM bolum
WHERE bolumAdi = 'İMALAT')