Skip to main content

AccessTr.neT


Mükerrer kayıtlardan bir adet kalacak şekilde silme.

Mükerrer kayıtlardan bir adet kalacak şekilde silme.

Çözüldü #1
Merhaba;
Benim çalışmamda kimisi 3 defa kimisi 2 defa tekrarlanan kayıtların olduğu bir tablom var. Kayıt adedi bir milyondan fazla ve bu kayıtlat içerisinde mükerrer olan kayıtlardan bir tane kalacak şekilde silmek istiyorum. Fakat bu bir milyon kayıt içindeki mükerrer kayıtlarda birini diğerinde farklı kılacak benzersiz bir alan yok.
Ozan hocamızın https://accesstr.net/konu-mukerrer-kayit...rgusu.html isimli örneğinde Kişi No adında bir benzersiz alanı var ve buna göre benimde istediğim gibi bir adet kayıt kalcak şekilde silme işlemi yapılıyor.
Ben kendi örneğimde yeni bir alan eklemeden bunu nasıl uygulayabilirim.
Ozan hocamızın ilk örneğini KişiNo alanını silip mükerrer kayıtlar ekleyerek ekliyorum. Bu örnekte mükerrer kayıtlardan sadece 1 tane kalacak şekilde nasıl silerim.
Konu hakkında bilgilerinizi rica ederim.
Saygılar.
.rar direnist-mükerrerkayitsil.rar (Dosya Boyutu: 11,74 KB | İndirme Sayısı: 15)
Cevapla
Çözüldü #2
İstediğinizi bir form üzerinden yaptım ancak döngülerle ilgili bir hata yaptığım için her çalıştırmada benzer kayıtlardan birer tane silebiliyorum. En sonunda artık silinecek kayıt olmadığı için duruyor. Şİmdi bu işi de döngü ile hiç benzer kayıt kalmayacak duruma gelene kadar döndüreceğim. Az kaldı geliyor Img-grin))
İnadına, ille de Accesstr.net...
Cevapla
Çözüldü #3
Mehmet hocam çok teşekkür ederim.
Saygılar.
Cevapla
Çözüldü #4
Örneğiniz hazır. BUyrun.
.rar direnist-mükerrerkayitsil_demiral.rar (Dosya Boyutu: 55,89 KB | İndirme Sayısı: 48)
İnadına, ille de Accesstr.net...
Cevapla
Çözüldü #5
Mehmet Hocam algoritmanıza hayran kaldım.
Zor oldu benim için ama çözdüm. Çözdüm derken anladım yani nasıl işlediğini.
Döngü 1 den tablodaki isim adedi kadar dönecek
Geçerli kayıttaki TCKN bilgisini TCNO değişkenine al
Bir sondaki kayda geç
Bu kayıttaki TCKN bilgisi TCNO değişkeni içindeki bilgiye eşit ise sil ve sonraki kayda geç.
Aynı işlemleri tekrarla.
Peli hocam silme işlemindeki komular nedir diye sorsam çokmu olurum?
Yani;
DoCmd.RunCommand acCmdSelectRecord komutu kaydı seçili halemi getiriyor.
Neden direk DoCmd.RunCommand acCmdDeleteRecord ile silme işlemini yapmadık.
Teşekküler Saygılar.
Cevapla
Çözüldü #6
Aslında ilk başta sonraki kayda gitme olayını silme anında yapmayı düşünmüştüm. Oldu da. Ama şimdi hatırlayamadığım bir hata oluşuyordu. Bu nedenle sonraki kayda gitmek için DoCmd.GoToRecord , , acNext kullandım. Aslında silme kodunu accessin normal silme sihirbazındaki kodlardan kopyaladım. Ben pek ezber yapamam da Img-grin)) Senin dediğin şekilde daha mantıklı. Gözümden kaçmış. Gereksiz bir komut olarak kalmış orda. Eeee, döngüye odaklanmaktan gözümüz diğer yerleri görmemiş.
İnadına, ille de Accesstr.net...
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da