SİLME Sorgusu (DELETE SORGUSU)

08/07/2016, 13:41

atoz112

SORGULAR\ETKİN SORGU TÜRLERİ– SİLME Sorgusu (DELETE SORGUSU)

TANIMI

Zaman içerisinde,bir Veritabanına kaydedilen bazı Tablo kayıt bilgilerinin değerleri kalmamış ya da saklama sürelerini aşmış olabilir.Bu aşamada,bu anlamdaki kayıt bilgilerinin tablo içerisinde bulunup,Veritabanından silinmesini sağlamak üzere;Silme Sorgusu kullanılır.

Böylece,bu kayıt bilgileri silinerek,Veritabanının hem doluluk miktarının azaltılması hem de veritabanının güncel kalması sağlanmış olur.

OLUŞTURMA

Üst Menü’den EKLE sekmesi üzerine gelindiğinde,SORGU TASARIMI seçeneği ile sorgu tasarım sayfasına geçilir.

Tasarım sayfasının üst kısmında boş bir alan üzerine sağ tuş ile tıklanmak sureti ile TABLO GÖSTER seçeneği yönlendirmesi ile TABLO/SORGU tercihlerinden bir ya da birkaçı (oluşturulmak istenen sorgu içeriğine göre değişir) seçilmek sureti ile ana temel unsur olarak gerekli olan alanların belirlenmesi için tablo veya sorgu seçimleri yapılır.

Akabinde,yine üst menüden ister SORGU Menüsü’nden SİL seçeneği ile ya da isterse de yine boş bir alan üzerinde sağ tuşa basmak sureti ile SORGU TÜRÜ sekmesi ile SİLME SORGUSU ifadesi seçilerek gerçekleştirilebilir.

1)
DÜZ SORGU
(Sorgu Tasarımı üzerinden)

KULLANIM KALIBI

DELETE * FROM tablo_adi;


ÖRNEK
Kod:
DELETE * FROM Tablo1;

AÇIKLAMASI

Tablo 1 adlı tablo içerisindeki tüm kayıtları SİL.


(Olay Yordamı üzerinden)
Bir buton denetiminin olay yordamı üzerinden düz sorgu yazılmak istendiği takdirde,SQL kod satırının öncesinde bu satırın bir üst ve bir alt satırlarına

DoCmd.SetWarnings False
…(SQL kod ifadesi satırı)…
DoCmd.SetWarnings True

ifadelerinin yazılması gerekmektedir ki,SQL sorgusu çalıştırıldığında herhangi bir UYARI MESAJI vermesi engellenerek arka planda akabinde çalışmasını tamamlamasını sağlaması gerçekleşsin.

ÖRNEK

(ana form üzerinde SİL ifadesi verilmiş bir butonun TIKLANDIĞINDA olay yordamı içerisine yazılmak sureti ile)

Kod:
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE * FROM Tablo1”
DoCmd.SetWarnings True

 
2)KRİTERLİ SORGU
(Sorgu Tasarımı üzerinden)

KULLANIM KALIBI

DELETE tablo_adi.id_alan_adi, * FROM Tablo1 WHERE (((tablo_adi.id_alan_adi)=[Forms]![ana_formun_adi]![id_denetim_adi]

ÖRNEK
Kod:
DELETE Tablo1.id, * FROM Tablo1 WHERE (((Tablo1.id)=[Forms]![Tablo3]![id]));

AÇIKLAMASI

id alan değeri Tablo3 adlı formun üzerindeki id denetim değerine eşit olan Tablo 1 adlı tablo içerisindeki kayıt bilgisini bul ve kaydı SİL.

(Olay Yordamı üzerinden)

ÖRNEK
(ana form üzerinde SİL ifadesi verilmiş bir butonun TIKLANDIĞINDA olay yordamı içerisine yazılmak sureti ile)

Kod:
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE Tablo1.id, * FROM Tablo1 WHERE Tablo1.id=" & [Forms]![Tablo3]![id]
DoCmd.SetWarnings True


ÖNEMLİ NOT
Kriterler ve Kriter sayısı istenildiği kadar birkaç kritere göre belirleme adına artırılabilir.

Kriter satırında direkt bir ifade değeri veya bir form üzerindeki bir denetim adı yazılırken;eğer tablodaki alanın Veri Türü METİN ise,TEK TIRNAK (‘) içerisinde yazılması gerekmektedir.

Eğer Veri Türü SAYI ise, sayı değerini olduğu gibi yazmak yeterlidir.

Verimli olması temennisi ile…İyi çalışmalar,saygılar.
08/07/2016, 21:19

ozanakkaya

Paylaşım ve anlatım için teşekkürler.
09/07/2016, 06:16

benremix

Emek ve paylaşımlarınız için teşekkürler.....