AccessTr.neT

Tam Versiyon: Mükerrer kayıtlardan bir adet kalacak şekilde silme.
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
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.
İ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))
Mehmet hocam çok teşekkür ederim.
Saygılar.
Örneğiniz hazır. BUyrun.
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.
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ş.
Sayfalar: 1 2