benzersi kayıt

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ASE
Kıdemli Üye
Mesajlar: 518
Kayıt: 28 Ağu 2003 03:17
Konum: samsun
İletişim:

benzersi kayıt

Mesaj gönderen ASE »

Mustafa Abi Allah rızası için yardım.
Ya bunu bilen yok ya da kimse söylemek istemiyor. Kime sordumsa yanıt alamadım.
Benim için çok önemli. Eğer bi gün bulur ve çalıştırırsam söz açık kodları burada yayınlayacağım....

Access e adotable ile bağlanıyorum. 28 adet alan ekliyorum. Ancak girdiğim alanlardan birinin kesinlikle benzersiz olması gerekiyor. Kodla benzersizliği bir türlü kontrol edemiyorum. bunu yapabileceğim bir kod varsa lütfen yardım edin. Bu alan otomatik sayı gibi artan değerlere sahip değil. Yani rastgele numaralardan oluşuyor. Yaptığım programın tek eksiği denilebilir ama 3 aydır çözemedim bu problemi.

İndex le yapılan benzeersizlik işime yaramıyor...
Yardım ederseniz minnettar olacağım...

DB de indexleme yaptığımda KEY VIOLATION accesde ise birincil anahtar üzerinde hata var gibi bir mesaj geliyor. Ama ben bunu kendim kontrol etmek istiyorum.

asedizer@hotmail.com
En son ASE tarafından 11 May 2004 07:32 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

table ın beforepost unda girilen numarayı query ile sorgula.
query nin recordcount u 0 dan büyükse mevcuttur.
kolaygelsin..
ASE
Kıdemli Üye
Mesajlar: 518
Kayıt: 28 Ağu 2003 03:17
Konum: samsun
İletişim:

Mesaj gönderen ASE »

Kardeşler mümkünse bir örnek verebilirmisiniz ben daha yeni sayılırım bu konularda sorgulama örneği yani kodu yazabilir misiniz.
Şimdiden sağolun
hicker
Üye
Mesajlar: 68
Kayıt: 01 Tem 2003 09:58
Konum: Konya

Mesaj gönderen hicker »

istediğin olayı yanlış anlamadıysam Table1.Post; yazan her yere aşağıdaki kodu yazarsan sanırım işini görür.

try
Table1.Post;
except
ShowMessage('Böyle bir kayıt mevcut!');
end;

kolay gelsin...
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7601
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

viewtopic.php?t=291

bu başlıkta örnekler var, kolay gelsin.
Kullanıcı avatarı
mehmet_turecan_cakmak
Üye
Mesajlar: 132
Kayıt: 02 Tem 2003 01:08
Konum: Afyon
İletişim:

benzersiz

Mesaj gönderen mehmet_turecan_cakmak »

selam...

hocam zaten sen cevabı kendin vermişsin tablona bir alan ekle ve bunu otomatik sayı olarak tanımla başka yapılabilecek birşey yokki...

iyi çalışmalar...
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

query şöyle olcak.

Kod: Tümünü seç

select no from tableadı
where no = :xno 
query yi yazdıktan zonra params özelliğinde xno parametresinin tipini belirtmeyi unutma. Tablodaki no alanının tipineyse xno da aynı olmalı..

Kod: Tümünü seç

procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
  if Query1.Active then
    Query1.Active := False;
  Query1.ParamByName('xno').Value := Table1No.Value;
  Query1.Active := True;
  if Query1.RecordCount > 0 then
  begin
    ShowMessage('Kayıt Mevcut');
    Abort;
  end;
end;
Cevapla