Skip to main content

AccessTr.neT


Aynı veri varsa Güncelle Yoksa Ekle

Aynı veri varsa Güncelle Yoksa Ekle

#7
sayın ask200075,

Alıntı:If DCount("*","Kayıtyapılacaktabloadı",[Kayıteklenecek sutunadı]=&Forms("Formadı").FormMetinkutusu)>0 Then

curruntdb.execute"Insert into...........................................................

else

curruntdb.execute"Update........................................................... 

End If

eğer bu kodları kullanmak istiyorsanız;iki açıklamayı belirtmek gerek.

1)

If DCount("*", "Tablo2", "[Ay]='" & Me.Açılan_Kutu55 & "'") > 0 Then

curruntdb.execute"GÜNCELLEME KODLARI buraya yazılacak"

else

curruntdb.execute"YENİ KAYIT KODLARI buraya yazılacak"

End If


öncelikle,yukarıdaki gibi kullanmalısınız,bu kodları.çünkü;

a) IF Fonksiyonu kullanımında kontrol edilecek tablo adı,TABLO2.


b) kontrol ifadesi ile kast edilen şu:
eğer TABLO2 içinde seçilen AY değerine göre kayıtlar mevcutsa (0 (Sıfır) değerinden büyük sonuç elde ediliyorsa),GÜNCELLEME işlemini uygula,

eğer kayıt yoksa YENİ KAYIT EKLEME işlemini uygula.

dolayısı ile de,yazdığınız kodlar için uygulanacak işlem tersi olarak değiştirilmeli.

2)

eğer doğru kontrol kodlarını yazsanız bile,konunuzun 6.mesajında yapılan

Alıntı:...örneğin;10 kayıt varsa ve tekrar aktarırsanız,20 kayıt olacak aynı kayıtları içeren.bunu engellemek için de,tablo2 tablosuna aktarmadan öncesinde mevcut kayıtları önce silip yani temizleyip sonra aktarmanız gerekecek.bu da,önce DELETE sorgusu ardından INSERT INTO sorgusunu çalıştırmak demektir...

 açıklamada geçerli olan durum meydana gelecektir.aynı kayıtları tekrar ekleme durumu söz konusu olacaktır.bu nedenle,Mükerrer Kayıt Kontrolü çerçevesinde bu işlemleri sağlamalısınız.

bilginize...iyi çalışmalar,saygılar.
Herkes, kendisinin AR-GE'cisidir...


Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler
Alt Form Denetim Değerlerine ulaşma ve Alt Form Güncelleme
Kapatırken Düzenle (Compact On Close) Seçeneğinin İşaretlenmesi Hakkında
Cevapla
#8
Form2 de  açılır kutu ile Tablo1 deki ay alanını güncelledik. Daha sonra Tablo1 ve Tablo2 deki ay alanlarını kontrol ediyoruz önceden var mı ? Tablo2 de o ayın verileri yoksa Tablo1 den olduğu gibi tüm mevcut verileri Tablo2 ye ekliyoruz. Eğer Tablo1 ay alanına güncelediğimiz (örnek Nisan ayı) Tablo2 de mevcutsa Tablo2 deki Nisan Ayı yazan şahıslarının verilerini güncelleyecek.
Bundaki ana amaç nedir ? 1-) Kullanıcıya Tablo2 deki fazlalıkları sildirmeyi mecbur ettirmemek. 2-) Tablo1 de önceden düzeltilmesi gereken verilerden önce  tablo2'ye  sehven tablo1' den atılmış ise form1 de yapılan düzeltmelerin yapıldıktan sonra tablo2 ye tekrar eklenmeden tablo2 'nin  güncellenmesi.
Tablo1 yıl boyunca ana merkez tablo2 ise veri depolama merkezi olarak düşünülmektedir.
Son Düzenleme: 15/12/2016, 08:08, Düzenleyen: ask200075.
Cevapla
#9
sayın ask200075,

EK'te;

eğer TABLO2 tablosunda seçilen AY değerine göre kayıt mevcut değilse,
TABLO1 tablosuna kaydetmeden direkt olarak TABLO2 tablosuna yeni seçilen AY değerine göre kaydedilmesine yönelik olarak hazırlanmış örnek uygulama mevcuttur.inceleyebilirsiniz.

bilginize...iyi çalışmalar,saygılar.
.rar insert-update-ATOZ2.rar (Dosya Boyutu: 23,67 KB | İndirme Sayısı: 16)
Herkes, kendisinin AR-GE'cisidir...


Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler
Alt Form Denetim Değerlerine ulaşma ve Alt Form Güncelleme
Kapatırken Düzenle (Compact On Close) Seçeneğinin İşaretlenmesi Hakkında
Cevapla
#10
Canım Hocam öncelikle engin bilgi ve tecrübeniz önünde saygı ile hürmetle eğilir ; Emek ve ilgilerinize çok teşekkür ederim.Yalnız benim tam izah edemediğim bir husus  var öncelikle ; Tablo1 de ay alanındaki verinin olup olmaması çok önemli değil İster Ocak ayı olsun İster Nisan ayı  esas önemli olan ; Tablo1 deki verilerin (son halinin ) tablo2 de yoksa eklenmesi var ise ; Tablo1 son hali Tablo2 güncelemesi.
sizin en son eklediğinizi inceledim. Ocak ve Şubat ayını Tablo2 ye sevk ettim. Form1 döndüm İlk şahısın aldığı ücret kısımını değiştirdim Tekrar form2 de şubat ayını güncelledim. Tablo1 deki aldığı ücret değişikliğini tablo2 deki şahsıın şubat ayındaki aldığı ücret kısmını güncellemediğini farkettim. Lütfen Hakkınızı Helal edin.
Son Düzenleme: 15/12/2016, 08:12, Düzenleyen: ask200075.
Cevapla
#11
sayın ask200075,

EK'te;

Alıntı:...Tablo1 deki Aldığı ücret değişikliğini Tablo2 deki şahsıın Şubat ayındaki aldığı ücret kısmını güncellemedi. (Tablo1 den Tablo2 yi Güncellemedi.)...

ifadenize yönelik olarak;

bir önceki örnekte,kontrol kod satırını eski hali ile bıraktığımı fark ettim,bu vesile ile.yeni halini ekliyorum.ikinci örnek üzerinden tekrar eklemişim.bunun için özür dilerim.bilmemi sağladığınız için de teşekkür ederim.

bahsettiğiniz talebinize yönelik olarak hazırlanmış örnek uygulama mevcuttur.inceleyebilirsiniz.

bilginize...iyi çalışmalar,saygılar.
.rar insert-update-ATOZ3.rar (Dosya Boyutu: 23,95 KB | İndirme Sayısı: 28)
Herkes, kendisinin AR-GE'cisidir...


Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler
Alt Form Denetim Değerlerine ulaşma ve Alt Form Güncelleme
Kapatırken Düzenle (Compact On Close) Seçeneğinin İşaretlenmesi Hakkında
Cevapla
#12
sayın ask200075,

sadece bilgilendirme olması ve naçizane tavsiye niteliğinde hatırlatma adına;

Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler

yukarıda bağlantısı yazılı konuyu incelemenizin ve içeriğindeki hususlara (özelikle,Türkçe karakter kullanımı ve BOŞLUK bırakarak tanımlamada bulunma) göre uygulamanızı yeniden düzenlemenizin,
ileride bu hususlardan kaynaklı sorunları da engellemenize imkan sağlaması söz konusu olacaktır kanısındayım.

Bilginize…iyi çalışmalar,saygılar.
Herkes, kendisinin AR-GE'cisidir...


Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler
Alt Form Denetim Değerlerine ulaşma ve Alt Form Güncelleme
Kapatırken Düzenle (Compact On Close) Seçeneğinin İşaretlenmesi Hakkında
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task