Skip to main content

AccessTr.neT


Sorgu ile tespit edilen ölçütlere göre silme sorgusu

Sorgu ile tespit edilen ölçütlere göre silme sorgusu

Çözüldü #1
Sayın hocalarım, sevgili arkadaşlar iyi akşamlar dilerim.

Ek'teki çalışmamda "hrk2 deki tarihleri ThmHRK den satır olarak sil" silme sorgusu ile (garip bir isim kabul ediyorum; gülüşmeleri duyar gibiyim Img-grin ) hrk2 listesindeki tespit edilen tarihleri ThmHRK tablosundan satır halinde silmek istiyorum. Silme sorgusuna ölçütü girmeden sorgu ile tespit ettirerek işlemi nasıl yaptırabiliriz?

Teşekkür ederim.
.zip SATIR_SIL2.zip (Dosya Boyutu: 89,58 KB | İndirme Sayısı: 9)
temre, 18-02-2010 tarihinden beri AccessTr.neT üyesidir.
Son Düzenleme: 07/11/2010, 21:17, Düzenleyen: temre.
Cevapla
Çözüldü #2
Sayın Temre;
Aşağıdaki komutu kendinize uyarlayınız.

Docmd.setwarnings False 'Uyarıları Kapatır
docmd.runsql "delete tabloadi where kosul"
Docmd.setwarnings True 'Uyarıları Yeniden Açar.
Kolay Gelsin.
komşuda dülger mi var geliyor keser sesi,
ustalar konuşunca çıraklar keser sesi.
Cevapla
Çözüldü #3
Sayın Kural ilginize teşekkür ediyorum.
Benim hrk2 tablosundaki kayıtlarım (koşullar) sürekli değişen verilerdir ve bir sorgu sonucu ile o listede yer almaktadır. Vba satırına bu değişkenleri o listeden güncel olarak nasıl okutabilirim? Veya silme sorgusuna koşulu manuel girmeden sorgudan nasıl atayabilirim?

Selamlar.
temre, 18-02-2010 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #4
Sayın Temre;
Silme sorgunuzu şu şekilde değiştirin

DELETE ThmHRK.[Fiili tarih] FROM ThmHRK WHERE (((ThmHRK.[Fiili tarih]) In (select [Fiili tarih] from hrk2)));
Kolay Gelsin.
komşuda dülger mi var geliyor keser sesi,
ustalar konuşunca çıraklar keser sesi.
Cevapla
Çözüldü #5
Sayın Kural hocam,

(Aynı anda mesaj attık sanırım, mesajı atınca 2.mesajınızı okudum, hemen uyguluyorum.)

Aşağıdaki komutlar bir yere kadar istenileni yapıyor ancak, ThmHRK tablosundaki [Fiili tarih] boş olanları silmiyor. hrk2 dosyasında boş tarih te bir ölçüt ama bunları nasıl sildirebilirim?

Teşekkürler.

Private Sub Command0_Click()

Dim rs As DAO.Recordset
Dim rs1 As DAO.Recordset
Dim db As Database
Dim strSQL As String

Set db = CurrentDb()

strSQL = "SELECT * FROM hrk2"
Set rs = db.OpenRecordset(strSQL)

strSQL = "SELECT * FROM ThmHRK"
Set rs1 = db.OpenRecordset(strSQL)

If rs.EOF = True Then GoTo 90
rs.MoveFirst
Do Until rs.EOF
rs1.MoveFirst
Do Until rs1.EOF
If rs![Fiili tarih] = rs1![Fiili tarih] Then rs1.Delete
rs1.MoveNext
Loop
rs.MoveNext
Loop

90:

End Sub
temre, 18-02-2010 tarihinden beri AccessTr.neT üyesidir.
Son Düzenleme: 08/11/2010, 00:32, Düzenleyen: temre.
Cevapla
Çözüldü #6
Sayın Temre;
Aşağıdaki Kod işinize yarayacaktır. Bu kod ile boş kayıtlarıda silebilirsiniz.


DELETE ThmHRK.[Fiili tarih] FROM ThmHRK WHERE (((ThmHRK.[Fiili tarih]) In (select [Fiili tarih] from hrk2))) OR (((ThmHRK.[Fiili tarih]) Is Null));

Kolay Gelsin.
komşuda dülger mi var geliyor keser sesi,
ustalar konuşunca çıraklar keser sesi.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task