Merhaba
Mail toplama programı yapıyorum. DBGrid ile verileri SQLite veri tabanından çekip DBGridde gösteriyorum.
DBGrid alanları
url, email, saat, tarih
email alanına aynı kayıt birkez daha eklenemesin diye UNIQ yaptım. Buraya kadar herşey normal.
Sorun: DBGrid üzerinde email alanında değişiklik yaptığım zaman, eğer değişiklik yaptıktan sonra o email veri tabanında var ise hata veriyor. TRY...EXPECT ile hatayı düzelteyim dedim olmadı! Ne yapmam lazım?
Değişiklik yaptığım zaman ağğağıdaki hatayı alıyorum:
[FireDAC][Phys][SQLite] ERROR: UNIQUE constraint failed: tblExtractor.Email.
TDBGrid Uniq Field Error [Çözüldü]
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
TDBGrid Uniq Field Error [Çözüldü]
En son Efe tarafından 14 Ara 2014 12:55 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Re: TDBGrid Uniq Field Error [Çözüldü]
Cevabı kendim vereyim

Kod: Tümünü seç
procedure TDM.FDQuery1UpdateError(ASender: TDataSet; AException: EFDException;
ARow: TFDDatSRow; ARequest: TFDUpdateRequest; var AAction: TFDErrorAction);
begin
AAction:=eaExitFailure;
MessageDlg('Bu mail adresinin aynısı zaten veri tabanında var.',
mtWarning, [mbOK], 0);
ASender.Close;
ASender.Open;
end;