Ekte çıkan uyarının resmi var. Tablomda hiçbir ilişki yokki Insert yaparken kendi create etmiş olduğum unique index aynı kayıttan üretilemeyiciğine dair otomatik uyarı veriyor ben bu uyarıyı değiştirmek istiyorum sorunum bu.
DoCmd.OpenQuery komutuyla bir insert çalıştırmadan önce
DCount komutu ile mükerrer kayıt olup olmadığını sizin kontrol etmeniz gerekir.
Kontrol esnasında mükerrer varsa, msgbox ile istediğiniz mesajı yazdırabilirsiniz.
Forumda arama kısmında "Mükerrer" veya "Mükerrer Kayıt" diye arama yaparsanız,
bu tür örnekler bulabilirsiniz.
Private Sub AlanAdı_AfterUpdate()
Dim SID As String
SID = Me.[AlanAdı].Value
stLinkCriteria = "[AlanAdı]=" & "'" & SID & "'"
If AlanAdı= Dlookup ("[AlanAdı]", "[TabloAdı]", "[AlanAdı]=forms![FormAdı]!AlanAdı") Then
MsgBox "Girmekte Oldugunuz " _
& SID & " Nolu TC Kimlik Numarası Daha Önce Kaydedilmiştir." _
& vbCr & vbCr & "Lütfen Kayıtları Kontrol Ediniz.", vbInformation _
, "Kayıt Kontrol"
Undo
Exit Sub
End If
End Sub
Yukarıdaki Kodları Kullanarak İstediğiniz Alanı Kontrol Edebilirsiniz.
Bahsettiğiniz örnekleri inceledim. Ancak mükerrerlik kontrolünü yarattığımız unique indexler zaten sağlıyor. Anladığım kadarıyla bu uyarıları değiytirmenin bir yolu yok. İlginize teşekkürler.
manual kontrol yaparsanız olur sadece. yani veriyi kaydetmeden önce bu bilgiler varmı kontrolü yapıp varsa o kayıdı getirmeniz en sağlamıdır.