Access masaüstü veritabanında çok sayıda veriyi hızlı bir şekilde silmek veya bir veri kümesini düzenli olarak silmek istediğinizde, silme veya güncelleştirme sorgusu yararlı olabilir çünkü sorgular verileri hızla bulup silmek için ölçüt belirtmeyi mümkün hale getirir. Kaydedilmiş bir sorguyu yeniden kullanabileceğiniz için sorgu kullanmak da zaman kazandırabilir.
Not: Herhangi bir veri silmeden veya silme sorgusu çalıştırmadan önce, Access masaüstü veritabanınızın yedeğinin bulunduğundan emin olun.
Yalnızca birkaç kaydı silmek istiyorsanız, sorguya ihtiyacınız yoktur. Tabloyu Veri Sayfası görünümünde açmanız, silmek istediğiniz alanları (sütunlar) veya kayıtları (satırlar) seçip DELETE tuşuna basmanız gerekir.
Önemli: Bu makaledeki bilgiler yalnızca masaüstü veritabanlarıyla kullanılmak üzere tasarlanmıştır. Access web uygulamalarında silme veya güncelleştirme sorgularını kullanamazsınız.
Bu makalenin başlıkları
Sorgu türü seçme
Veritabanınızdan veri silmek için bir güncelleştirme sorgusu veya silme sorgusu kullanabilirsiniz. Aşağıdaki tabloda yer alan ayrıntılara göre bir sorgu seçin:
Sorgu türü |
Kullanılacağı zaman |
Sonuçlar |
---|---|---|
Silme sorgusu kullanma |
Bir tablodan veya ilişkili iki tablodan kayıtların (satırların) tamamını aynı anda kaldırmak için. Not: Kayıtlar bire çok ilişkisinin "bir" tarafında bulunuyorsa, silme sorgusunu çalıştırmadan önce ilişkiyi değiştirmeniz gerekebilir. İlgili tablolardan verileri silme bölümüne bakın. |
Silme sorguları, kaydı benzersiz kılan anahtar değeri de dahil olmak üzere her alandaki tüm verileri kaldırır |
Güncelleştirme sorgusu kullanma |
Tablodan tek tek alan değerlerini silmek için. |
Mevcut değerleri null değere (veri olmadan) veya sıfır uzunluklu bir dizeye (aralarında boşluk olmayan çift tırnak işareti) güncelleştirerek değerleri silmeyi kolaylaştırır. |
Herhangi bir veriyi silmek için sorgu kullanmadan önce doğrulanması gerekenler
-
Dosyanın salt okunur bir dosya olmadığından emin olun:
-
Başlat'a sağ tıklayın ve Windows Gezgini'ni Aç'a tıklayın.
-
Veritabanı dosyasına sağ tıklayın ve Özellikler'e tıklayın.
-
Salt okunur özniteliğinin seçili olup olmadığını görün.
-
-
Kayıtları veritabanından silmek için gerekli izinlere sahip olduğunuzu doğrulayın. Emin değilseniz sistem yöneticinize veya veritabanı tasarımcısına başvurun.
-
Veritabanında içeriği etkinleştirdiğinizden emin olun. Varsayılan olarak, veritabanına güvenmediğiniz sürece Access tüm eylem sorgularını (silme, güncelleştirme ve tablo yapma sorguları) engeller. Veritabanına güvenme hakkında bilgi için Devre Dışı Modun sorguyu engellemesini durdurma bölümüne bakın.
-
Veritabanının diğer kullanıcılarından silmek istediğiniz verileri kullanan tüm tabloları, formları, sorguları ve raporları kapatmasını isteyin. Bu, kilit ihlallerini önlemeye yardımcı olur.
-
Kayıtları düzenlemeden veya silmeden önce, değişikliklerinizi tersine çevirmek istemeniz durumunda veritabanının yedek kopyasını oluşturmak iyi bir fikirdir.
İpucu: Veritabanına çok sayıda kullanıcı bağlanıyorsa, veritabanını kapatıp Özel Kullanım modunda yeniden açmanız gerekebilir.
Veritabanını Özel Kullanım modunda açmak için
-
Dosya sekmesine > Aç'a tıklayın.
-
Veritabanına göz atın ve veritabanını seçmek için üzerine gelin, Aç düğmesinin yanındaki oka tıklayın ve ardından Özel Kullanımda Aç'a tıklayın.
Veritabanını yedekleme
-
Dosya sekmesine tıklayın, Farklı Kaydet'in üzerine gelin.
-
Veritabanını Farklı Kaydet'e ve Veritabanını Yedekle'ye tıklayın. Access özgün dosyayı kapatır, bir yedek oluşturur ve özgün dosyayı yeniden açar.
-
Farklı Kaydet'e tıklayın, yedek kopya için bir ad ve konum belirtin ve Kaydet'e tıklayın.
Not: Salt okunur veya Access'in önceki sürümünde oluşturulmuş bir veritabanı kullanıyorsanız, veritabanının yedeklemesini oluşturmanın mümkün olmadığını belirten bir ileti alabilirsiniz.
Bir yedek kopyaya geri dönmek için, orijinal dosyayı kapatıp adını değiştirerek, yedek kopyanın orijinal sürümün adını kullanabilmesine olanak sağlayın. Orijinal sürümün adını yedek kopyaya verin ve yeniden adlandırdığınız yedek kopyayı Access'te açın.
Silme sorgusu kullanma
Silme sorgusu oluşturmak için Oluştur sekmesine tıklayın, Sorgular grubunda Sorgu Tasarımı'na tıklayın. Kayıtları silmek istediğiniz her tabloya çift tıklayın ve ardından Kapat'a tıklayın.
Tablo, sorgu tasarım kılavuzunun üst bölümünde bir pencere olarak görünür. Alan listesinden yıldız işaretine (*) çift tıklayarak tablodaki tüm alanları tasarım kılavuzuna ekleyin.
Silme sorgusunda belirli bir ölçüt kullanma
Önemli: Ölçütleri kullanarak yalnızca silmek istediğiniz kayıtları döndürebilirsiniz. Aksi takdirde, silme sorgusu tablodaki her kaydı kaldırır.
Silme ölçütü olarak belirtmek istediğiniz alana çift tıklayın, sorgu tasarımcısının Ölçüt satırına ölçütlerden birini girin ve her ölçüt alanı için Göster onay kutusunu temizleyin.
Bu seçeneği ne zaman kullanmak isteyebileceğinize ilişkin bir örnek: Bir müşteri için bekleyen tüm siparişleri kaldırmak istediğinizi varsayalım. Yalnızca bu kayıtları bulmak için, Sorgu tasarım kılavuzuna Müşteri Kimliği ve Sipariş Tarihi alanlarını ekler ve sonra müşterinin kimlik numarasını ve müşterinin siparişlerinin geçersiz olduğu tarihi girersiniz.
-
Tasarım sekmesinde Görünüm > Veri Sayfası Görünümü'ne tıklayın.
-
Sorgunun silmek istediğiniz kayıtları döndürdüğünü doğrulayın ve ardından CTRL+S tuşlarına basarak sorguyu kaydedin.
-
Sorguyu çalıştırmak için Gezinti Bölmesi'nde sorguya çift tıklayın.
Güncelleştirme sorgusu kullanma
Not: Access web uygulamasında sorguyu güncelleştirme seçeneğini kullanamazsınız.
Bu bölümde, tablolardan tek tek alanları silmek için güncelleştirme sorgusu kullanma işlemi açıklanmaktadır. Verileri silmek için güncelleştirme sorgusu çalıştırmanın, belirttiğiniz ölçüte bağlı olarak var olan değerleri NULL veya sıfır uzunluklu bir dize (aralarında boşluk olmayan çift tırnak işareti) olarak değiştireceğini unutmayın.
-
Oluştur sekmesine tıklayın ve Sorgular grubunda Sorgu Tasarımı'na tıklayın.
-
Silmek istediğiniz verilerin bulunduğu tabloyu seçin (tablo ilişkiliyse, ilişkinin "bir" tarafındaki tabloyu seçin), Ekle'ye ve ardından Kapat'a tıklayın.
Tablo, sorgu tasarım kılavuzunun üst bölümünde bir pencere olarak görünür. Pencere, seçili tablodaki tüm alanları listeler.
-
Tablodaki tüm alanları tasarım kılavuzuna eklemek için yıldız işaretine (*) çift tıklayın. Tüm tablo alanlarının eklenmesi, silme sorgusunun tüm kayıtları (satırları) tablodan kaldırmasını sağlar.
İsteğe bağlı olarak, tasarımcının Ölçüt satırına bir veya daha fazla alan için ölçüt girebilir ve sonra her ölçüt alanı için Göster onay kutusunu temizleyebilirsiniz. Ölçüt kullanma hakkında daha fazla bilgi için seçme sorguları için örnek ölçütler tablosuna bakın.
Not: Ölçütleri yalnızca değiştirmek istediğiniz kayıtları döndürmek için kullanırsınız. Aksi takdirde, güncelleştirme sorgusu sorgunuzdaki alanların her birindeki tüm kayıtları NULL olarak ayarlar.
-
Tasarım sekmesinin Sonuçlar grubunda Görünüm'ü ve ardından da Veri Sayfası Görünümü'nü tıklatın.
-
Sorgunun NULL olarak ayarlamak istediğiniz kayıtları veya sıfır uzunlukta bir dizeyi (aralarında boşluk olmayan çift tırnak işareti çifti) döndürdüğünü doğrulayın ("").
-
Gerekirse, 3 ile 5 arasındaki adımları yineleyin ve sorgu yalnızca silmek istediğiniz verileri döndürene kadar alanları veya ölçütleri değiştirin ve ardından CTRL+S tuşlarına basarak sorguyu kaydedin.
-
Sorguyu çalıştırmak için Gezinti Bölmesi'nde sorguya çift tıklayın.
Ek Bilgiler
İlişkiyi düzenleme
Bu adımları yalnızca ilişkinin "bir" ve "çok" tarafındaki verileri silmeniz gerektiğinde izleyin.
-
Veritabanı Araçları sekmesinin İlişkiler grubunda İlişkiler'e tıklayın.
-
Silme işlemine dahil olan tabloları bağlayan ilişkiye (çizgi) sağ tıklayın ve ardından kısayol menüsünde İlişkiyi Düzenle'ye tıklayın.
-
İlişkileri Düzenle iletişim kutusunda Bilgi Tutarlılığını Zorla onay kutusunun seçili olduğundan emin olun.
-
İlişkili Kayıtları Art Arda Sil onay kutusunu seçin.
Not: Bu özelliği yeniden devre dışı bırakıncaya kadar, ilişkinin "bir" tarafındaki bir kaydın silinmesi, ilişkinin "çok" tarafındaki tüm ilgili kayıtları siler.
-
Tamam'a tıklayın, İlişkiler bölmesini kapatın ve sonraki adım kümesine geçin.
İlişkiyi silme
-
Henüz yapmadıysanız İlişkiler bölmesini açın.
-
Veritabanı Araçları sekmesinin İlişkiler grubunda İlişkiler'e tıklayın.
Verilerinizi sildikten sonra ilişkiyi geri yükleyebilmeniz için ilişkiye dahil olan alanları not edin.
-
Silme işlemine dahil olan tabloları bağlayan ilişkiye (çizgi) sağ tıklayın ve ardından kısayol menüsünde Sil'e tıklayın.
Not: İlişkiyi geri yüklemek için önceki adımları izleyerek İlişkiler bölmesini açın ve ardından birincil anahtar alanını "bir" tablosundan sürükleyip "çok" tablosunun yabancı anahtar alanına bırakın. İlişkiyi Düzenle iletişim kutusu görüntülenir. Eski ilişki bilgi tutarlılığını zorunlu kıldıysa, Bilgi Tutarlılığını Zorla'yı seçin ve oluştur'a tıklayın. Aksi takdirde Oluştur'a tıklamak gerekir.
Seçme sorguları için örnek ölçütler
Aşağıdaki tabloda, yalnızca silinmesini istediğiniz verileri sildiğinizden emin olmak istediğinizde seçme sorgularında kullanabileceğiniz bazı örnek ölçütler listelenir. Bu örneklerden bazıları joker karakterler kullanır.
Ölçütler |
Etkisi |
---|---|
> 234 |
234'ten büyük olan bütün sayıları döndürür. 234'ten daha küçük olan sayıları bulmak için < 234 kullanın. |
>= "Cajhen" |
Ebru'dan alfabenin sonuna kadar olan bütün kayıtları getirir. |
2/2/2010# ile #12/1/2010 tarihleri arasında# |
2-Şub-2010 ile 1-Ara-2010 (ANSI-89) tarihleri döndürür. Veritabanınız ANSI-92 joker karakterlerini kullanıyorsa, kare işareti (#) yerine tek tırnak işareti (') kullanın. Örnek: '2/2/2010' ile '12/1/2010' arasında. |
Not "Almanya" |
Alanın tam içeriğinin "Almanya" ile tam eşit olmadığı tüm kayıtları bulur. Ölçüt, "Almanya"nın yanı sıra, "Almanya (avro)" veya "Avrupa (Almanya)" gibi karakterler içeren kayıtları döndürür. |
Not "T*" |
T harfiyle başlayanlar dışında tüm kayıtları bulur. Veritabanınız ANSI-92 joker karakter kümesini kullanıyorsa, yıldız * yerine yüzde işareti % kullanın. |
Not "*t" |
T ile bitmeyen bütün kayıtları bulur. Veritabanınız ANSI-92 joker karakterler takımını kullanıyorsa, yıldız (*) işareti yerine yüzde (%) işareti kullanın. |
In(Kanada,İngiltere) |
Bir listede Kanada veya İngiltere içeren bütün kayıtları bulur. |
Like "[A-D]*" |
Metin alanında, A ile D arasında başlayan tüm kayıtları bulur. Veritabanınız ANSI-92 joker karakter kümesini kullanıyorsa yıldız (*) yerine yüzde işaretini (%) kullanın. |
Like "*ar*" |
"ar" harf dizisini içeren tüm kayıtları bulur. Veritabanınız ANSI-92 joker karakter kümesini kullanıyorsa, yıldız (*) yerine yüzde işareti (%) kullanın. |
Like "Ahmet Özgü?" |
Ahmet ile başlayan, 5 harflik ikinci dizesinin ilk dört harfi "Özgü" olan ve son harfi bilinmeyen bütün kayıtları bulur. Veritabanınız ANSI-92 joker karakterler takımını kullanıyorsa, soru işareti ? yerine alt çizgi _ kullanın. |
#2/2/2010# |
2 Şubat 2010'a ilişkin tüm kayıtları bulur. Veritabanınız ANSI-92 joker karakter kümesini kullanıyorsa, tarihi pound işaretleri ('2/2/2010') yerine tek tırnak işaretleri ile çevreleyin. |
< Date() - 30 |
30 günden daha eski olan tarihleri getirmek için Date işlevini kullanır. |
Date() |
Bugünün tarihini içeren tüm kayıtları getirmek için Date işlevini kullanır. |
Between Date() And DateAdd("M", 3, Date()) |
Bugünün tarihi ile bugünün tarihinden üç ay arasındaki tüm kayıtları döndürmek için Date ve DateAdd işlevlerini kullanır. |
Is Null |
Boş (boş veya tanımlanmamış) değer içeren tüm kayıtları döndürür. |
Is Not Null |
Herhangi bir değer içeren (null olmayan) tüm kayıtları döndürür. |
"" |
Sıfır uzunluklu dize içeren tüm kayıtları döndürür. Gerekli bir alana değer eklemeniz gerektiğinde sıfır uzunluklu dizeler kullanırsınız, ancak gerçek değerin ne olduğunu henüz bilmiyorsunuz. Örneğin bir alan için faks numarası gerekmesine karşın bazı müşterilerin faks numarası olmayabilir. Bu durumda, sayı girmek yerine, aralarında boşluk olmayan bir çift tırnak işareti ("") girersiniz. |
Sorun giderme ipuçları
Bu hata iletisiyle neden karşılaşıyorum, hatayı nasıl gideririm?
Birden çok tablo kullanarak silme sorgusu oluşturursanız ve sorgunun Benzersiz Kayıtlar özelliği Hayır olarak ayarlanırsa, Access hata iletisini görüntüler; Sorguyu çalıştırdığınızda belirtilen tablolardan silinemedi .
Bu hatayı gidermek için, sorgunun Benzersiz Kayıtlar özelliğini Evet olarak ayarlayın.
-
Silme sorgusunu Tasarım görünümünde açın.
-
Sorgu özellik sayfası açık değilse, açmak için F4 tuşuna basın.
-
Sorgu özelliklerinin görünmesi için (alan özellikleri yerine) sorgu tasarımcısını tıklatın.
-
Sorgu özellik sayfasında, Benzersiz Kayıtlar özelliğini bulup Evet olarak ayarlayın.
Devre Dışı Modu'nun sorguyu engellemesini durdurma
Varsayılan olarak, güvenmeyi seçmediğiniz veya güvenilir bir konumda bulunmayan bir masaüstü veritabanını açarsanız, Access tüm eylem sorgularının çalışmasını engeller.
Eylem sorgusunu çalıştırmayı denerseniz ve hiçbir şey olmazsa, Access durum çubuğunda şu iletinin görünüp görünmediğine bakın:
Bu eylem veya olay Devre Dışı Modu tarafından engellendi.
Bu iletiyi gördüğünüzde, engellenen içeriği etkinleştirmek için aşağıdaki adımı uygulayın:
-
Güvenlik Uyarısı İleti Çubuğu'nda İçeriği Etkinleştir'e tıklayın ve sorgunuzu yeniden çalıştırın.